Back Midas Rome Roody Rootana
  Root Display GUI, Page 1 of 7  Not logged in ELOG logo
ID Date Author Topic Subjectup
  13   21 Jul 2003 Konstantin  
I created a CVS repository for the ROOT GUI project: 
/dasdevpc/cvsroot/rootgui (dasdevpc:/usr/local/cvsroot/rootgui) 
 
(should I rename it to cvsroot/miroodas?). 
 
K.O. 
 
  24   14 Aug 2003 Greg  
MAIN GUI
========
Invocation:
TTriumfFileGUI -h 
 ->Displays Usage message
TTriumfFileGUI host
 ->Opens GUI and connects to host on default port 9090
TTriumfFileGUI host:port
 ->Opens GUI and connects to host on port (to be implemented)
TTriumfFileGUI file.root
 ->Opens GUI and opens file.root for browsing
TTriumfFileGUI file.hbook
 ->Opens GUI and opens file.hbook for browsing (to be implemented)
TTriumfFileGUI
 ->Opens GUI

File Menu
 -> Open .root
	Opens file selection dialog to find and open a ROOT file
 -> Open .hbook
	Opens file selection dialog to find and open an HBOOK file
 -> Online
	Opens hostname entry dialog ... Will try and access that host on
        port 9090 (currently using 9090 as default port)
 	If hostname:port, will try and access hostname on proper port 
        (Not Yet Implemented)
 -> Save
	Not Yet Implemented -> Idea:
		Will bring up a save dialog which will allow user to save 
		all opened histograms
 -> Exit
	Closes the program

Refresh Menu
 ->Not Yet Implemented -> Idea: (Radio Buttons)
     ->Stop Refresh
	 Stops the refreshing of online histograms by stopping the TTimer
     ->Refresh 1 sec  \
     ->Refresh 3 sec   |
     ->Refresh 5 sec   |-- Change TTimer time length (and start it)
     ->Refresh 10 sec /

Zones Menu 
  ->Not Yet Implemented -> Idea: (Radio Button)
     ->1x1
     ->1x2
     ->2x1
     ->2x2
     ->3x3
     -> ...
	Each of these will changes force all the new TCanvas() created to be 
	divided into zones
	If double clicked (TGListTree or TGListView) will create new canvas,
        unless option is changed in AddHist to Menu.
        If from context menu -> can overlay in current pad
                             -> can plot in current pad (removes old hist)
                             -> can create new canvas
                             -> can plot in next pad (if last pad ... plot 
                                in first pad)

AddHist to Menu:
  ->Not Yet Implemented -> Idea: (Radio Button)
      -> 4 Options:
	-> plot in new canvas
        -> plot in current pad
        -> plot in next pad
        -> overlay in current pad
      -> Depending on which one is checked the double click functionality 
         will change

Open Files Panel (TGListTree)
  ->Shows open files (offline and online) as well as TH*, TProfile*, TTree ...
  ->Need to add ContextMenus
	ContextMenu (depends on UserData)
	 ->Close Files (remove file from list)
	 ->Plot Options (for histograms) ->see AddHist to menu options
  ->Need to have: when item selected in TGListTree, items in TGListView
    are deselected

Open Histograms Panel (TGListView)
  ->Shows open histograms (i.e. goes over gROOT->GetListOfCanvases())
  ->Need to add ContextMenus
      ->Histogram stuff ->see AddHist to menu options
  ->Need to have: when item selected in TGListView, itesms in TGListTree
    are deselected

Buttons
  ->Not yet Implemented
  ->Refresh (goes over all open histograms)
  ->Banish 
     ->if histogram selected ... removes from associated Pad and 
       deletes from list (in TGListView)
     ->if file is selected in TGListTree ... removes file (may need to close 
       TTreeViewer ... but histograms are made persistent so no need to 
       close)
     ->Save same functionality as the File->Save
  15   21 Jul 2003 Konstantin Account for Joe Chuma
I created an account for Joe Chuma on the DAQ cluster. The home directory 
is /send/home/chuma. Joe, please contact me to learn your password. K.O. 
 
  16   21 Jul 2003 Konstantin Account for Joe Chuma
I created an account for Joe Chuma on the DAQ cluster. The home directory 
is /send/home/chuma. Joe, please contact me to learn your password. K.O. 
 
  129   04 Dec 2006 Konstantin OlchanskiBug FixAdd menu for SetOptStat
I commited the implementation for a new menu item: "OptStat". It allows setting
gStyle->SetOptStat in a user-friendly manner. K.O.
  100   05 Jul 2005 Qing GuInfoAffect of different root versions on Roody
After changing ROOT version from root_v4.04.00 to root_v4.04.02, the histograms
don't stay highlighted after clicking, but the top "Roody" bar disappears sometimes.
  121   21 Aug 2006 Konstantin OlchanskiBug FixBetter zoom & rebin controls, show TDirectory contents
I commited a series of changed to Roody:
- cleanup unused files
- show contents of TDirectory objects (this used to work before, why was it
removed? It was a 1 line fix!)
- rework and simplify controls for zooming and rebinning of TCanvas contents
K.O.
  19   22 Jul 2003 Greg CVS
miroodas code has been imported into the CVS and can be checkout

cvs -d /dasdevpc/cvsroot co miroodas

or

cvs -d gking@dasdevpc:/usr/local/cvsroot co miroodas
--using gking as an example user

Please see miroodas/doc/README.txt for more information on compiling

cheers,
Greg
  60   14 Sep 2004 Konstantin CVS and Build instructions
Updated build instructions for end-users.

To checkout the miroodas sources use:

setenv CVS_RSH ssh
cvs -d anoncvs@dasdevpc:/usr/local/cvsroot checkout miroodas
(password: anoncvs)
cd miroodas/src
setenv ROOTSYS whatever
make
./TTriumfGui file.root or file.hbook

K.O.
  82   17 Jan 2005 Konstantin OlchanskiInfoCVS instructions
Updated CVS instructions for ROODY:

1) cvs anonymous read-only access:
     export CVS_RSH=ssh
     cvs -d anoncvs@dasdevpc.triumf.ca:/usr/local/cvsroot checkout roody
    (username: anoncvs, password: anoncvs)
2) read-write cvs access (requires user account on dasdevpc.triumf.ca)
     export CVS_RSH=ssh
     cvs -d USERNAME@dasdevpc.triumf.ca:/usr/local/cvsroot checkout roody
3) build instructions:
     cvs ... checkout roody
     cd roody/src
     make
     ./roody {file.root,file.hbook,-Hhostname:port}

K.O.
  14   21 Jul 2003 Konstantin CVS repository
I created a CVS repository for the ROOT GUI project: 
/dasdevpc/cvsroot/miroodas (dasdevpc:/usr/local/cvsroot/miroodas) 
 
K.O. 
  69   19 Oct 2004 Matthias SchneebeliSuggestionComments on Roody
I have some comments on roody :

1)
The peakfinder is only available when you right click on the histogram line.
This is a very limited area. I would rather make the peakfinder available 
whenever you right click anywhere in the histogram area.

2)
On a canvas with zones:
When you start the peakfinder from a histogram, which is not active, roody 
searches for peaks on the active histo. Therefore, I would make the histogram 
active, whenever you click on the histo, no matter which button you click. Or 
the peakfinder should make the histo active first.

3)
When you change the zones you loose all your histos. I would prefer to have the 
histos, which are already displayed also on the rezoned canvas. 

4)
When I resize the x-axis of a histogram by hand and then plot a new histogram 
in the same pad, I loose the scale I have choosen. There should be a switch, 
with which you can keep the settings of a histogram for further histos.

If you agree upon these requests, let me know if you like me to implement some 
of these features.
  71   22 Oct 2004 Joe ChumaSuggestionComments on Roody
> I have some comments on roody :
> 
> [snip]
> If you agree upon these requests, let me know if you like me to implement some 
> of these features.

These all seem like good suggestions and it is fine with me if you want
to work on the code.
  72   26 Oct 2004 Matthias SchneebeliSuggestionComments on Roody
I have committed point 1 and 2.

For point 3 you need to save all displayed histos in a stack. So that you can plot 
them into the rezoned canvas. I don't know if you want to do that.

I would prefer if you would do point 4.

Matthias
  112   16 Mar 2006 Matthias SchneebeliBug ReportCompiling under windows
Hi,

when I try to compile roody under windows I get following errors.



c:\roody>nmake -f Makefile.win

Microsoft (R) Program Maintenance Utility, Version 7.00.9466
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.

cl /D "OS_WINNT" /GX /GR /Ic:\roody\include /Ic:\roody\..\mxml /IC:\ROOT\include /I. /c /Foobj/Roody.obj src/Roody.cxx
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86
Copyright (C) Microsoft Corp 1984-1998. All rights reserved.

Roody.cxx
c:\roody\include\Roody.h(388) : error C2039: 'size_t' : is not a member of 'std'
c:\roody\include\Roody.h(391) : error C2039: 'size_t' : is not a member of 'std'
c:\roody\include\Roody.h(396) : error C2039: 'clear' : is not a member of 'basic_string<char,struct std::char_traits<char>,class std::allocator<char> >'
src/Roody.cxx(754) : error C2061: syntax error : identifier 'xml'
src/Roody.cxx(755) : error C2228: left of '.rdstate' must have class/struct/union type
src/Roody.cxx(762) : error C2296: '<<' : illegal, left operand has type 'class std::basic_ofstream<char,struct std::char_traits<char> > &(__cdecl *)(void)'
src/Roody.cxx(762) : error C2297: '<<' : illegal, right operand has type 'char [9]'
src/Roody.cxx(768) : error C2296: '<<' : illegal, left operand has type 'class std::basic_ofstream<char,struct std::char_traits<char> > &(__cdecl *)(void)'
src/Roody.cxx(768) : error C2297: '<<' : illegal, right operand has type 'char [12]'
src/Roody.cxx(769) : error C2296: '<<' : illegal, left operand has type 'class std::basic_ofstream<char,struct std::char_traits<char> > &(__cdecl *)(void)'
src/Roody.cxx(769) : error C2297: '<<' : illegal, right operand has type 'char [11]'
src/Roody.cxx(770) : error C2296: '<<' : illegal, left operand has type 'class std::basic_ofstream<char,struct std::char_traits<char> > &(__cdecl *)(void)'
src/Roody.cxx(770) : error C2297: '<<' : illegal, right operand has type 'char [11]'
src/Roody.cxx(771) : error C2296: '<<' : illegal, left operand has type 'class std::basic_ofstream<char,struct std::char_traits<char> > &(__cdecl *)(void)'
  30   20 Dec 2003 Konstantin Fix Chuma's CVS access
Somehow neither Joe nor myself were in the "cvs" group and could not commit
to the miroodas CVS. Fixed by editing root@dasdevpc:/etc/group + NIS reload.
K.O.
  152   25 May 2012 Konstantin OlchanskiBug FixFixed the "Zones" menu
The "Zones" manu has not been working right - if you have a canvas open with one 
histogram plotted and you select Zones "2x2", nothing happens. The expected 
action is to have the canvas divide itself into 4 pads (2x2) and the one 
histogram to show up in the first pad. That's how it works now.

svn rev 240.
K.O.
  51   05 Jul 2004 Konstantin HBOOK support
I commited changes to TTriumfFileGUI.{h,cxx} to add support for looking at
HBOOK files. K.O.
  75   30 Nov 2004 chris pearsonSuggestionHistogram zeroing, and extended histogram display manipulation
  We need a simple way of zeroing online spectra, using the roody viewer to
select which spectra are to be zeroed.

   We would also like the histogram view to be unaffected by refreshing. 
Currently the y axis is autoscaled after a refresh.

  We would also like a quicker way of manipulating the histogram display, than
by the awkward, particularly for canvases containing multiple histograms, axis
manipulation currently available.  This could be a toolbar similar to the view
editor that already exists - are the contents of this customisable, or would a
separate toolbar be needed?, and would ideally contain the following ...
   4 buttons, which could each be labelled with a single arrow, for shifting the
histogram left/right/up/down (e.g. by half the corresponding axis's range).  4
buttons, which could each be labelled with double arrows, for scaling the x/y
axes (scaling by factors of 2 and 0.5, about the axis's initial position).  3
buttons for toggling linear/log scale on each axis (these are in the current
view editor).  3 more buttons, for resetting the view to default, for retaining
the current view and for reverting to a previously retained view.
  We would also like to be able to attach markers to a histogram (requiring
another button to remove markers).  markers would be placed using mouse clicks
on the histogram, *and* by a text entry box for typing channel numbers.  Markers
would be labelled with x,y.  There would then be a button to expand an axis
between the last 2 placed markers.  The markers would also be used for analysis
such as integral and peakfind/fitting.
  The view manipulation toolbar would be one per canvas, so there would also
need to be a toggle button to apply the view manipulation commands to all the
histograms on that canvas, or to just the currently selected histogram[s] (a way
to select several, rather than just one, histograms would be useful)

   This would be very much quicker and easier to use than selecting items from
long menus, which themselves need to be called by selecting specific, often very
small, regions of a canvas.

Chris
  76   01 Dec 2004 Konstantin OlchanskiSuggestionHistogram zeroing, and extended histogram display manipulation
>   We need a simple way of zeroing online spectra, using the roody viewer to
> select which spectra are to be zeroed.

Problem confirmed: there is a button for "clear all", but no buttons for "clear
selected histograms" and "clear just this one histogram". It was suggested that the
right-click context menu for each histogram should have a "clear" action. Maybe same
for a "group".

>    We would also like the histogram view to be unaffected by refreshing. 
> Currently the y axis is autoscaled after a refresh.

I thought this was fixed a long time ago...

>   We would also like a quicker way of manipulating the histogram display, than
> by the awkward, particularly for canvases containing multiple histograms, axis
> manipulation currently available.

I am thinking along the lines of locking the "zooming" of all histograms: on a 2x2
panel of histograms, rezooming any one of them would rezoom the others the same way.

> This could be a toolbar similar to the view
> editor that already exists - are the contents of this customisable, or would a
> separate toolbar be needed?, and would ideally contain the following ...
>    4 buttons, which could each be labelled with a single arrow, for shifting the
> histogram left/right/up/down (e.g. by half the corresponding axis's range).  4
> buttons, which could each be labelled with double arrows, for scaling the x/y
> axes (scaling by factors of 2 and 0.5, about the axis's initial position).  3
> buttons for toggling linear/log scale on each axis (these are in the current
> view editor).  3 more buttons, for resetting the view to default, for retaining
> the current view and for reverting to a previously retained view.

This does not sound like something I can do in 5 minutes, maybe Joe Chuma would take
this on?

>   We would also like to be able to attach markers to a histogram (requiring
> another button to remove markers).  markers would be placed using mouse clicks
> on the histogram, *and* by a text entry box for typing channel numbers.  Markers
> would be labelled with x,y.  There would then be a button to expand an axis
> between the last 2 placed markers.  The markers would also be used for analysis
> such as integral and peakfind/fitting.

Maybe I am missing something, but is this not "standard root" functionality, using
the pad editor and adding "TLabels"?

>   The view manipulation toolbar would be one per canvas, so there would also
> need to be a toggle button to apply the view manipulation commands to all the
> histograms on that canvas, or to just the currently selected histogram[s] (a way
> to select several, rather than just one, histograms would be useful)

I like this: a control for selecting if the action is applied to just one histogram
or to all histograms in a group.

>    This would be very much quicker and easier to use than selecting items from
> long menus, which themselves need to be called by selecting specific, often very
> small, regions of a canvas.

I see: ROOT is geared very much for manipulating ONE graphical object at a time. We
want to manipulate MANY identical objects at the same time and the existing tools
are inadequate, for example because each object is physically very small and it is
hard to point-and-click it.

K.O.
ELOG V3.1.4-2e1708b5