1 2007-03-21 Alja Mrak-Tadel <Alja.Mrak.Tadel@cern.ch>
4 Add getter for fValueIsColor.
6 2007-03-22 Matevz Tadel <matevz.tadel@cern.ch>
8 * TGeoShapeExtract.cxx:
10 New files: class TGeoShapeExtract that allows import of exact
11 image of geometry as exported from gled.
16 New classes TGeoShapeExtract and Reve::GeoShapeRnrEl.
19 Disable ROOT's auto-update of TGListTree's checkboxes.
22 Setup check-box pictures when inserting in a list-tree.
25 Fix typo, swap of R/Z.
29 Add ctors/setters from float/double arrays.
32 Align position, rotation and scale widgets.
39 2007-03-15 Alja Mrak-Tadel <Alja.Mrak.Tadel@cern.ch>
44 New class GridStepper.
47 Check ownership of quad-ids in Reset().
49 2007-03-15 Matevz Tadel <matevz.tadel@cern.ch>
53 Add an optional flag to Redraw3D() issuing a request for dropping
54 of logical-shapes on this redraw (temporary hack until we get new
55 gl stuff and can do it right). Fix in RemoveRenderElement() where
56 wrong argument was used when unregistering the item from the
59 2007-03-08 Alja Mrak-Tadel <Alja.Mrak.Tadel@cern.ch>
63 Added method SortPathMarksByTime().
66 Fix for checking boundaries of path-marks.
68 2007-03-08 Matevz Tadel <matevz.tadel@cern.ch>
71 Missing initialization; fiddle with the track marker-style a bit
74 2007-03-06 Matevz Tadel <matevz.tadel@cern.ch>
77 In PadPrimitive::Paint() test fRnrChildren instead of fRnrSelf.
78 Some formatting changes while searching for the above bug.
80 2007-03-04 Alja Mrak-Tadel <Alja.Mrak.Tadel@cern.ch>
85 Classes RenderElement and RenderElementListBase have been merged,
86 RenderElementListBase class is removed.
88 Since RenderElement supports hierarchical structure fRnrElement is
89 replaced to fRnrSelf and fRnrChildren. RnrSelf/RnrDaughters
90 callbacks from editor set check box picture according to the for
93 New class PadPrimitve. Objects of the classes enable recursive
94 rendering as they are added in TPad fListOfPrimitives.
98 Changes from RenderElement. Added Bool_t fKeepEmptyCont
99 determining behaviour of zero-count rnr-element imports.
103 Added function to create 4 check box pictures which mark fRnrSelf
104 and fRnrChildren state of RenderElement.
108 Inherit from PadPrimitve instead of from RenderElementList.
110 * RenderElementEditor.cxx:
111 * RenderElementEditor.h:
121 Changes from RenderElement.
125 Changes from RenderElement; change import functions to
126 add hits, clusters, kinematic to selected object.
128 2007-02-26 Matevz Tadel <matevz.tadel@cern.ch>
132 In class Track: renamed ImportDaughters() to ImportKine(), added
133 ImportKineWithArgs(), both accessible from ctx-menu.
135 2007-02-26 Alja Mrak-Tadel <Alja.Mrak.Tadel@cern.ch>
140 TrackRnrStyle: add pt-range memebers.
142 2007-02-21 Alja Mrak-Tadel <Alja.Mrak.Tadel@cern.ch>
146 Add function to return PathMark type-name.
149 Call redraw after Enable/DisableListElements.
153 Two new items for context menu: PrintPathMarks and
157 Make consistent alignment.
159 2007-02-20 Matevz Tadel <matevz.tadel@cern.ch>
165 Fix Ludovic's strange const-method syntax.
167 2007-02-19 Alja Mrak-Tadel <Alja.Mrak.Tadel@cern.ch>
170 Add member time to class PathMark. Set values in enum
174 Add callbacks to set path marks. In Track::MakeTrack() implement
175 fitting of track references and daughter particles.
178 Add Getters and Setters in TrackRnrStyle and TrackList to define
179 rendering of path marks.
183 Add widgets to control rendering and fiting of pathmarks.
187 Override LineGL::DirectDraw() to draw path marks.
189 2007-01-19 Matevz Tadel <matevz.tadel@cern.ch>
192 Added nested class RedrawDisabler allowing exception-safe
193 disabling of 3d-redraw.
195 2007-01-17 Matevz Tadel <matevz.tadel@cern.ch>
199 TrackCounterEditor: add number-entry to directly set the event
202 2007-01-12 Matevz Tadel <matevz.tadel@cern.ch>
206 TrackCounter: added method OutputEventTracks() for storing
211 TrackCounterEditor: added buttons to print/file scanning results
212 and to display current histograms.
214 2006-12-19 Matevz Tadel <matevz.tadel@cern.ch>
218 Added method Track::PrintKineStack(); added global TrackCounter
219 pointer to overcome resets of CINT globals in macros.
221 2006-12-18 Matevz Tadel <matevz.tadel@cern.ch>
224 Added getters for frame-point details.
227 If frame-box is set, use it for determination of bounding-box.
229 2006-12-15 Matevz Tadel <matevz.tadel@cern.ch>
232 Subclass from ReferenceBackPtr instead of ReferenceCount.
239 Moved declaration/definition of ReferenceBackPtr from
240 RenderElement.h/cxx to Reve.h/cxx.
243 Added index data-member to MC/RecTrack.
247 Added signal-emitting 'void CtrlClicked()' and 'Bool_t
248 fEmitSignals' that controls if signals are emitted on secondary
250 Fixed handling of main-color which is in fact
251 forwarded to shared frame.
255 Added method 'void ImportClustersFromIndex()' and data-member
259 Increase range of track extrapolation precision.
261 2006-12-13 Matevz Tadel <matevz.tadel@cern.ch>
265 Added per-quad TRef, implemented virtual callback QuadSelected()
266 for secondary selection from GL.
270 Added support for secondary selection. Sacrificed some speed for
271 simplicity / clarity.
273 2006-12-08 Matevz Tadel <matevz.tadel@cern.ch>
277 Added inner struct VoidCPlex::iterator; increase constness.
282 Slight simplification of heavy-duty loops over elements.
284 2006-12-06 Matevz Tadel <matevz.tadel@cern.ch>
290 Added support for rendering hexagons (needed by PMD).
292 2006-12-04 Matevz Tadel <matevz.tadel@cern.ch>
296 Renamed typedef lpRE_t/i to List_t/i.
297 Added method groups Begin/End/GetN-Parents/Children().
303 Renamed typedef lpRE_t/i to List_t/i.
306 New class TrackCounter[Editor]; added RenderElement typedefs.
309 Render frame before checking if QuadSet is empty and exiting.
313 Added a hack that restores CINT state if macro execution ends with
318 Added class TrackCounter;
319 Track now inherits from TQObject and emits a Clicked() signal;
320 Renamed typedef lpRE_t/i to List_t/i.
324 Added class TrackCounterEditor.
327 In TrackGL::ProcessSelection(): make model-track emit Clicked signal.
329 2006-11-21 Matevz Tadel <matevz.tadel@cern.ch>
337 New files: line representation with per-point selection.
341 New files: allow interaction with the track, more configurability
342 (render as line, points or both).
346 Derive Track from Line (before was TPolyLine3D, RenderElement);
347 this allowed me to remove a lot of code actually shared with
351 Register new classes.
354 Some points were duplicated during track construction.
361 Use better names for QuadTypes (enum and internal structs).
365 Style/comment changes.
367 2006-11-17 Matevz Tadel <matevz.tadel@cern.ch>
371 Removed unnecessary constructor.
373 2006-11-17 Matevz Tadel <matevz.tadel@cern.ch>
376 Bugfix: loop variable was not increased in case of a continue
381 Rename over/undershoot to over/underflow.
383 * RGBAPaletteEditor.cxx:
384 * RGBAPaletteEditor.h:
385 Beautify editor; rename over/undershoot to over/underflow.
387 2006-11-16 Matevz Tadel <matevz.tadel@cern.ch>
391 * CascadeEditors.cxx:
393 From Ludovic, new files for visualization of cascades.
396 From Ludovic: register new classes. Reorganize some entries so
397 that a class, editor and gl-renderer are listed together.
402 From Ludovic: updates for V0 visualization.
406 Main color now set from frame-box (instead of default palette
410 Use new color-query function from RGBAPalette; validity of digit
411 value was not honoured in line-drawing modes.
415 * RGBAPaletteEditor.cxx:
416 * RGBAPaletteEditor.h:
417 Reimplementation of over/undershoot handling with separate modes
418 for both ends (cut, mark, clip and wrap); this works marvelously.
422 New files, editor for QuadSet gluing together translation and
427 Added int version of SetLimits for RGDoubleValuator; added
428 getters for value limits (Ludovic).
434 2006-11-14 Matevz Tadel <matevz.tadel@cern.ch>
442 * RGBAPaletteEditor.cxx:
456 2006-11-14 Matevz Tadel <matevz.tadel@cern.ch>
459 Added getters for limits of the RGValuator.
461 2006-11-14 Matevz Tadel <matevz.tadel@cern.ch>
464 Removed support for old ROOT versions.
468 Added base-interface ReferenceBackPtr (reference-counted object
469 with back references to render elements); to be used for shared
470 markup classes (color-palettes, frames) that need to update their
471 consumers once their state is changed.
475 Removed code for RGBAPalette; now in its own file.
479 Cleaned-up by using RGValuators instead of raw ROOT GUI (partial).
485 Very optimized in sense of speed / memory usage as it supports
486 several orientations of rectangles and all possible variants of
487 default sizes / third coordinate; also added pointers to
488 color-palette and frame-box/rectangle so that these elements can
489 be shared among instances of the same type (eg. silicon strip
490 detectors). Means more code in this class ... but hopefully much
494 Register new classes FrameBox, Plex, RGBAPalette and V0 stuff.
500 New files: provide a surrounding box/rectangle with a given
501 size/color; can be shared among many instances of render-elements
502 (eg. silicon strip detectors).
506 New files: container with chunked memory allocation (to avoid
507 frequent re-allocation on creation time) and ability to refit
508 itself into a contiguous array.
512 * RGBAPaletteEditor.cxx:
513 * RGBAPaletteEditor.h:
514 New files: a generic color palette with value to color mapping; to
515 be used by most digit/raw-data classes; can be shared among many
516 instances of render-elements (eg. silicon strip detectors).
522 From Ludovic: new files for visualization of V0s.
524 * RenderElementEditor.cxx:
528 2006-10-31 Matevz Tadel <matevz.tadel@cern.ch>
535 Started to work on reimplementation of the quad-set, renamed the
536 old one to OldQuadSet; i'm checking this in because another change is
537 needed for the new muon code and i already changed several things.
539 2006-10-27 Matevz Tadel <matevz.tadel@cern.ch>
543 In Line render-mode really render boxes as lines to allow
544 selection to proceed through the box walls; removed pre-processor
545 ifs for old root version.
547 2006-10-26 Matevz Tadel <matevz.tadel@cern.ch>
550 Fixed operator+ functions for exceptions (forgot to change them
551 when migrated from std::string to TString as exception base-class).
553 2006-10-25 Matevz Tadel <matevz.tadel@cern.ch>
557 Changed inheritance to include Reve::RenderElement;
558 use ZTrans to store transformation matrix;
559 added render-mode state (to force line/fill drawing).
561 In class Box added ctor and function MakeAxisAlignedBox() to
562 facilitate creation of regular boxes.
565 Support different render modes.
570 New class Reve::RGBAPalette: allow easier creation of color
571 paletts mapped to integer-value range.
577 Added parameter 'Width_t fWidth' to TrackRnrStyle and a method to
578 change width of all tracks in TrackList.
582 Added method method GenerateZNormalColors() that uses
583 Reve::RGBAPalette to set-up triangle color based on z-component of
586 2006-10-18 Matevz Tadel <matevz.tadel@cern.ch>
592 New files: implementation of homogeneous transformation matrix
593 with accompanying geditor.
597 * TriangleSetEditor.cxx:
598 * TriangleSetEditor.h:
601 New files: arbitrary triangulated surface.
604 Create a dummy event directory if none exists on AddRenderElement.
608 Added class RGTriVecValuator, a composite widget for editing
609 three-vectors. Used by ZTransEditor.
614 2006-10-13 Matevz Tadel <matevz.tadel@cern.ch>
618 Added contructor from TPartice.
620 2006-10-12 Matevz Tadel <matevz.tadel@cern.ch>
625 Fix wrong numerical constant in transformation assignment.
628 Added comment about problems with getting context-menu for
633 Added data-members for important GUI elements (master-frame,
634 master-tab); added method 'AddCanvasTab(const char* name)'.
638 Use TString as exception base instead of std::string.
642 Brought in sync with changes in render-element
643 management/conventions.
645 2006-10-04 Matevz Tadel <matevz.tadel@cern.ch>
651 Made RenderElement::ExportToCINT() virtual and reimplemented it in
656 Added optional TrackRnrStyle* argument to TrackList constructors;
657 renamed mRnrStyle to fRnrStyle.
659 2006-10-02 Matevz Tadel <matevz.tadel@cern.ch>
668 Changes for new geditor and gl two-level selection; added
669 delarations of private copy-ctor and assignment-op.
672 Added method GetRnrElement().
677 Added RGTopFrame::PreDeleteRenderElement() and calls to it; so far
678 it checks if the object is being displayed in the editor but can
679 in principle check other things as well.
681 * RenderElementEditor.cxx:
682 Assgined RenderElementEditor fPriority 0 (to appear on top).
684 2006-09-27 Matevz Tadel <matevz.tadel@cern.ch>
689 Made GLCanvas un-editable to prevent users from drawing things
690 over 3D scene; renamed the canvas data member from fCC to
691 fGLCanvas. Renamed local variables not to dress-up as
694 2006-09-26 Matevz Tadel <matevz.tadel@cern.ch>
697 Hack to fix RenderElementObjPtr's colors in tree-view is no longer
702 Properly update items of render-elements; call gReve::Redraw3D()
703 instead of pad modified/update. Added separate method
704 DisplayRenderElement() that caches the render-element in a
705 data-member to update it on change (needed for RenderElementObjPtr).
708 Use RGEditor::DisplayRenderElement() instead of
709 DisplayObject(). Removed some never-used static structures.
712 Removed Redraw3D() from UpdateItems() as it can now be called from
713 RGEditor::Update(); optimized item-updates in SetRnrElement() and
716 * PointSetArrayEditor.cxx:
718 Added call to Update() in SetRange() methods.
720 2006-09-26 Matevz Tadel <matevz.tadel@cern.ch>
725 Use new functionality from TGedEditor.
727 * PointSetArrayEditor.cxx:
728 * PointSetArrayEditor.h:
729 * RGeoNodeEditors.cxx:
731 * RenderElementEditor.cxx:
732 * RenderElementEditor.h:
735 Conform to new TGedFrame paradigm in ROOT.
737 2006-09-04 Matevz Tadel <matevz.tadel@cern.ch>
740 Fix effc++ warnings and most blatant coding-convention violations.
742 2006-08-30 Matevz Tadel <matevz.tadel@cern.ch>
748 * PointSetArrayEditor.cxx:
749 * PointSetArrayEditor.h:
755 * RGeoNodeEditors.cxx:
759 * RenderElementEditor.cxx:
760 * RenderElementEditor.h:
778 Removed code for gled-like object editors (obsolete, somewhat
779 decayed); fix effc++ warnings.
781 2006-08-29 Matevz Tadel <matevz.tadel@cern.ch>
787 Added ifdefs for post root-5.11.0 prototype of SetModelCheckClass().
790 In Reset: added call to PointSet3D::ClearIds().
794 Added support for control of camera-reset to Redraw3D(); when
795 opening GL window disable automatic camera reset on update and on
798 2006-08-04 Matevz Tadel <matevz.tadel@cern.ch>
802 Commented-out info print statements.
804 2006-07-11 Matevz Tadel <matevz.tadel@cern.ch>
808 Bypass buggy TMacro ctor (caused problems on paths including '.',
811 2006-07-11 Matevz Tadel <matevz.tadel@cern.ch>
815 Added method RenderElementListBase::DestroyElements().
817 2006-07-10 Matevz Tadel <matevz.tadel@cern.ch>
821 Removed files: the contents moved to VSDEvent and renamed
826 New files: common base class for an event object (VSDEvent and
831 New files: rename of class Reve::Event, now subclassed from
835 Reflect changes in event classes.
838 Added include TError.h.
842 Changed current-event pointer from TObject to EventBase; made
843 global-store and event-stores render elements; improved interface
844 for adding/removing render-elements.
848 Implemented proper reference management accross render-elements,
849 render-element-lists and tree-items; implemented methods for
850 removal and destruction of render-elements.
856 * RGeoNodeEditors.cxx:
859 Proper management of dependent render-elements, renamed
860 FullUpdate() to UpdateItems() and changed inheritance order
861 (derive RenderElement first).
863 2006-07-03 Matevz Tadel <matevz.tadel@cern.ch>
868 Added new classes TPointSelector and TPointSelectorConsumer
869 allowing more natural extraction of point-data from trees.
873 Implemented the TPointSelectorConsumer interface for PointSet and
874 PointSetArray; in PointSetArray removed obsolete methods
875 MakeScrollbar() and HandleScrollEvent().
877 2006-06-27 Matevz Tadel <matevz.tadel@cern.ch>
880 Skip render-state initialization if no boxes present.
884 Added option to render GeoTopNodeRnrEl at a given global position
885 (requires ROOT > 5.11.7).
890 Fixed creation of editor frame so that it uses X client's
891 SetRoot() functionality. This should (finally) close the issue.
894 Check for macro via full-path (fTitle); save macro as '.C' not
898 In CheckMacro() use TInterpreter::IsLoaded(mac) instead of
899 searching the list of global functions.
902 Fixed code for hit and cluster import to work with 'new' render
903 element registration mechanism.
905 2006-06-21 Matevz Tadel <matevz.tadel@cern.ch>
910 New class Reve::RMacro: a sub-class of TMacro that tries to unload
911 the macros properly before/after the operation.
915 Provide TFoler fMacroFolder to all consumers, register
916 Reve::RMacro mime type on start-up.
920 Added global function Bool_t Reve:CheckMacro().
922 2006-06-20 Matevz Tadel <matevz.tadel@cern.ch>
926 In TrackList: added ImportHits/Clusters(); removed obsolete
929 2006-06-19 Matevz Tadel <matevz.tadel@cern.ch>
933 In PointSetArray: added member for default daughter PointSet
934 capacity (fDefPointSetCapacity) and method DeleteBins(). Set
935 daughter polymarker stuff in InitBins() instead of CloseBins().
939 Consistently use nuber of slider positions in RGValuator.
942 Added method RenderElementListBase::RemoveElements().
944 2006-06-14 Matevz Tadel <matevz.tadel@cern.ch>
947 Added non-protected wrapper Render() for DirectDraw().
951 Subclassed point-set-array from TAttMarker, propagate changes to
954 * PointSetArrayEditor.cxx:
955 Removed stale printout.
958 Print exceptions to terminal also.
960 2006-06-13 Matevz Tadel <matevz.tadel@cern.ch>
963 Draw charged tracks as straight lines when magnetic field is near
966 2006-06-12 Matevz Tadel <matevz.tadel@cern.ch>
973 Renamed RenderElement::SetMainColorByPixel(Pixel_t) back to
974 RenderElement::SetMainColor(Pixel_t); there seemed to be a problem
975 when dependencies were not generated properly.
979 Added methods Track::ImportHits() and Track::ImportClusters();
980 fixed a charge value inconsistency yielding reconstructed
981 track charge to be 1/3.
983 2006-06-09 Matevz Tadel <matevz.tadel@cern.ch>
986 Added friend PointSetArrayEditor.
988 * PointSetArrayEditor.cxx:
989 * PointSetArrayEditor.h:
992 Use RGDoubleValuator for range-selection widget.
995 Accept -mode cmd-line option as an alias for -revemode.
998 Added some padding for labels.
1000 2006-06-02 Matevz Tadel <matevz.tadel@cern.ch>
1004 Added method UndrawRenderElement().
1006 * RenderElement.cxx:
1008 Implemented dtor for RenderElement removing all instances from
1013 Added method RGValuator::SetEnabled().
1015 2006-06-01 Matevz Tadel <matevz.tadel@cern.ch>
1022 Added preprocessor conditionals to support ROOT > 5.11.2.
1024 2006-05-31 Matevz Tadel <matevz.tadel@cern.ch>
1031 New valuator widget classes RGValuator and RGDoubleValuator.
1033 2006-05-31 Matevz Tadel <matevz.tadel@cern.ch>
1038 Added method ArrTrans().
1041 Added setup of macro/include paths into function
1044 * reve_main/reve_main.cxx:
1045 Removed macro/include path setup.
1047 2006-05-23 Matevz Tadel <matevz.tadel@cern.ch>
1053 Use RenderElement* as user-data of list-tree entries (it was
1057 * RenderElement.cxx:
1059 Added class RenderElementObjPtr to allow display and control of
1060 pure TObjects (see alice-macros/region_marker.C for an
1061 example). This is not perfect as there is no way to get
1062 color-change updates from the editor (can fix this when i get
1063 control over TGedEditor::Update()). RenderElement::GetObject() is
1068 Added function FindColorVar() to allow RenderElementObjPtr objects
1069 to peek into appropriate color.
1071 2006-05-23 Matevz Tadel <matevz.tadel@cern.ch>
1077 Do not initialize bbox in ctor. Moved ctor to cxx file, removed
1082 Fix for editor window not appearing under some window
1083 managers. For me it was working OK under fvwm and KDE (any focus
1084 policy) but not at all under Gnome. This fixed my gnome problem
1085 but it's quite likely the problem is not completely solved.
1087 2006-05-18 Matevz Tadel <matevz.tadel@cern.ch>
1092 Added missing initializations. In particular, fCurrentEvent,
1093 fCurrentEventLTI and fGeometryLTI were not initialized and this
1094 caused segvs for usage without bootstrap with alieve_init.C macro.
1096 2006-05-17 Matevz Tadel <matevz.tadel@cern.ch>
1102 New class Reve::ReferenceCount; to be used as secondary base class.
1104 2006-05-15 Matevz Tadel <matevz.tadel@cern.ch>
1110 New function ColorFromIdx().
1116 New files: a set of boxes with direct GL rendering.
1119 Pragmas for BoxSet/GL.