Log of /trunk/gui/gui/src/TRootEmbeddedCanvas.cxx
Parent Directory
Revision
44507 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Jun 4 12:30:41 2012 UTC (2 years, 7 months ago) by
axel
File length: 16658 byte(s)
Diff to
previous 38343
Remove
using namespace std;
from Riostream.h, which has huge consequences for all of ROOT.
Riostream.h is now a simple wrapper for fstream, iostream, iomanip for backward compatibility; Riosfwd.h simply wraps iosfwd.
Because of templates and their inline functions, Riostream.h needed to be included in headers, too (e.g. TParameter.h), which violated the assumption that Riostream.h is not exposing its using namespace std to headers.
ROOT now requires R__ANSISTREAM, R__SSTREAM, which does not change the set of supported compilers.
Without "using namespace std", several identifiers are now prefixed by std::; e.g. roofit/* source files now have a using namespace std to keep their coding style.
TFile::MakeProject() now generates "using namespace std" to convert the CINT-style class names into C++ ones.
Revision
18620 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Sun Apr 29 07:06:48 2007 UTC (7 years, 8 months ago) by
brun
Original Path:
trunk/gui/src/TRootEmbeddedCanvas.cxx
File length: 14939 byte(s)
Diff to
previous 18557
From Bertrand:
- Allow to drag and drop any object that has a default constructor
(required by TBufferFile) but is not a TFolder and not a TClass
(to avoid dragging ROOT class from list of classes) from TBrowser.
- Added check (obj->IsA()->GetMethodAllAny("Draw")) in method
HandleDNDdrop() of TRootCanvas and TRootEmbeddedCanvas
before calling obj->Draw().
Revision
18536 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Apr 19 21:07:02 2007 UTC (7 years, 9 months ago) by
brun
Original Path:
trunk/gui/src/TRootEmbeddedCanvas.cxx
File length: 13752 byte(s)
Diff to
previous 17480
From Bertrand:
Added drag and drop support for Linux (Xdnd) and Windows (Clipboard).
It is now possible to drag an histogram (or any other graphical object)
from an opened file in TBrowser to any TCanvas.
It is also possible to drag a text file from TBrowser to a TGTextView
or TGTextEdit widget (i.e. in TGTextEditor).
On Linux, it is even possible to drag from a Root application to another
one, or to drag a text file (i.e. a macro) from the ROOT browser to an
external editor (i.e. Kate).
On Windows, drag and drop only works within the same ROOT application
(for the time being).
Revision
15849 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Jul 26 13:36:44 2006 UTC (8 years, 6 months ago) by
rdm
Original Path:
trunk/gui/src/TRootEmbeddedCanvas.cxx
File length: 11056 byte(s)
Diff to
previous 15672
Instead of providing default implementations for copy ctor's and assignment
operators we better make them private (and not implemented) to avoid people
from accidentally using them. Especially the collections classes and the
TQObject derived classes. In these classes the default implementations would
cause havoc due to multiple deletions of the same objects and other
potential memory corruptions.
Revision
15672 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Jul 3 16:10:46 2006 UTC (8 years, 6 months ago) by
brun
Original Path:
trunk/gui/src/TRootEmbeddedCanvas.cxx
File length: 11813 byte(s)
Diff to
previous 15253
from Axel:
Change the signature of SavePrimitive from
void SavePrimitive(ofstream &out, Option_t *option);
to
void SavePrimitive(ostream &out, Option_t *option = "");
With this change one can do, eg
myhist.SavePrimitive(std::cout);
WARNING: do rm -f tree/src/*.o
Revision
15191 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Sun May 28 20:08:00 2006 UTC (8 years, 7 months ago) by
brun
Original Path:
trunk/gui/src/TRootEmbeddedCanvas.cxx
File length: 11746 byte(s)
Diff to
previous 15173
From valeriy Onuchine:
- TImage, TASImage
o Change return type of Vectorize method from "void" to "Double_t*".
o Implement FromWindow method under X11. This method allows to
create "snapshot image" from any ROOT window or frame.
- config/Makefile.depend
Add dependency of libGuiBld lib on libGraf.
GuiBuilder uses internally TImage/TASImage class.
- GX11Gui.cxx
X11 error handler was slightly modified.
Many X11 errors lead to freezing X11 server and
did not allow debugging.
To prevent freezing, a "forced seg.violation" was added
to the error handler.
The usage of the new "feature" is the following:
0. run "gdb root.exe"
1. set "gDebug = (int)gVirtualX" - that activates the new error handling.
2. run application which has X11 errors.
On X11 error the application was stopped by the "forced seg.violation".
3. "gdb>bt" - backtrace the problem.
!!! A big list of changes in libGui initiated by gui builder development !!!
- TGButton.h, TGButton.cxx
TGButton class:
o SetDown methods removed from context menu.
o SetEnabled method of context menu changed to TOGGLE.
Setting fWidgetFlags was added.
- TGTextButton class
o GetNormGC(), GetFontStruct() methods are introduced.
o SetFont removed from context menu.
o ChangeText(const char *title) was introduced and added to context menu.
o fixed an error in SetFont method which set font globally instead of
locally.
o SavePrimitive - save text justification
- TGPictureButton
o added getter method GetDisabledPicture()
- TGCanvas
o added to GuiBuilder widgets palette.
- TGColorDialog
o new methods:
- TGColorPalette *GetPalette(),
- TGColorPalette *GetCustomPalette(),
- void SetCurrentColor(Pixel_t col)
o new signal:
- void ColorSelected(Pixel_t)
o new parameter added to contructor "Bool_t wait".
If "wait" is kTRUE, "gClient->WaitForUnmap" is called internally
(normal/old usage). If "wait" is kFALSE - "gClient->WaitForUnmap"
should be called by user.
o few "usefull" colors added to "custom" palette.
- TGColorSelect
o added to GuiBuilder widgets palette.
- TGComboBox
o new methods:
- SortByName - allows to sort combobox entries by names.
- SetEnabled, IsEnabled.
- TGFontDialog was rewritten.
o Previous version worked under win32 only,
now it works on X11 also.
It allows to select any font available on the system.
o new parameter added to contructor "Bool_t wait".
If "wait" is kTRUE, "gClient->WaitForUnmap" is called internally
(normal/old usage). If "wait" is kFALSE - "gClient->WaitForUnmap"
should be called by user.
o new methods:
void SetFont(TGFont *font);
void SetColor(Pixel_t color);
void SetAlign(Int_t align);
void EnableAlign(Bool_t on = kTRUE);
void UpdateStyleSize(const char *family);
o new signals:
- FontSelected(char *font)
- AlignSelected(Int_t a)
- ColorSelected(Pixel_t c)
- TGFrame
o unused static member fgContextMenu removed.
- TGCompositeFrame
o TGCompositeFrame::SetEditDisabled modified. It is used for setting
fEditDisableXX attribute during gui buildind.
o ChangeSubframesBackground helper method was introduced.
- TGGroupFrame
o SetTextFont, SetTextColor methods were corrected for
"local" changing of the font.
- TGWindow
o kEditDisableKeyEnable added to EEditMode enum.
If this flag is set - window can handle keyboard events during gui
building.
- TGLabel
o new methods:
- GetNormGC, GetFontStruct
o fixed bugs in setting label's "local" text font.
o SavePrimitive - saving text justification added.
- TGListBox
o new methods:
- SortByName - allow to sort listbox entries by names.
- new auxilary/internal class TGLBFrameElement created.
It's used for ascending/descending sort of list box entries.
o reimplemented methods:
ChangeBackground, Layout, GetDefaultWidth
o disable changing layout manager in SetLayoutManager method.
Layout manager is not used for layout of list box.
- TGIcon
o SetImagePath method was corrected.
- TGScrollBarElement
o new methods:
- SetEnabled, IsEnabled. These methods are used in enabling/disabling
TGNumberEntry objects.
- TGScrollBar
o new getter methods:
- GetHead, GetTail, GetSlider
o new signals:
- PositionChanged, RangeChanged, PageSizeChanged
o ChangeBackground was reimplemented.
- TGShutter
o new methods:
- AddPage, RemovePage, RenamePage
o new signal Selected.
o disable changing layout manager in SetLayoutManager method.
Layout manager is not used for layout.
- TGView
o disable changing layout manager by SetLayoutManager method.
Layout manager is not used for layout.
o ChangeBackground(Pixel_t col) method added which changes background
color only of the canvas frame.
- TGNumberEntry
o more options added to context menu.
- TGProgressBar
o new getter/setter methods:
- GetBarColor, GetNormGC, GetFontStruct, SetForegroundColor.
- TGTab
o disable SetEditDisabled method to avoid changing "edit disable
attribute".
- TGTextEdit, TGTextView, TGView
o fixed bug - "character replace" mode didn't work
o setting insert mode added to context menu.
o setting "read only" mode added to context menu.
o new method which enable/disable "popup menu for edit actions" added.
o few corrections to SavePrimitive method.
- TGTextEntry
o guibuilder specific code was removed.
- TGuiBuilder.h, TGuiBldAction
o possibility to set picture for context menu entry added.
- treeviewer/inc/TSessionViewer.h
o forward declaration of TContextMenu class added.
Revision
15134 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue May 23 04:47:42 2006 UTC (8 years, 8 months ago) by
brun
Original Path:
trunk/gui/src/TRootEmbeddedCanvas.cxx
File length: 11690 byte(s)
Diff to
previous 14461
From Federico Carminati:
"I have implemented all copy and equal operators needed to silence all
warnings in AliRoot, as requested. I have implemented shallow copies as
would do the default operators synthetized by the compiler.
Most operators are protected. If users complain, you just have to move
them into the public area, but class derivation is of course supported.
It has been a terrible job, I have modified 278 files, but the changes
are backward compabile, and this goes a long way to permitting user to
use the effc++ flag with root headers."
Revision
14461 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Mar 29 08:09:43 2006 UTC (8 years, 9 months ago) by
antcheva
Original Path:
trunk/gui/src/TRootEmbeddedCanvas.cxx
File length: 10996 byte(s)
Diff to
previous 14449
From Valeriy Onuchin:
- in TGCompositeFrame::HandleDragEnter
Change a highlight color for frame which could
accept a drop.
- in TGMdiFrame destructor,
Cleanup method added to delete children frames
- in TRootEmbeddedCanvas constructor
fEditDisabled flag changed from kEditDisable to
kEditDisableGrab. That allows to fix problems
with editting embedded canvas during "guibuilding".
Revision
10414 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Oct 26 09:39:23 2004 UTC (10 years, 3 months ago) by
rdm
Original Path:
trunk/gui/src/TRootEmbeddedCanvas.cxx
File length: 10665 byte(s)
Diff to
previous 10402
From Valeriy:
- Disable editting GuiBuilder popup menus. That fixes undesirable effect
discribed by Ilka "2-click on the main frame-->Window menu/Cascade-->click
on the main frame title Properties tab shows the popup menu frame21
as selected one".
- Fix handling hot keys in GuiBuilder menu bar, menus, e.g. Alt-F, Alt-W.
- TGMdiMainFrame::SetCurrent(TGMdiFrame*) signal added, which
emittied when mdi frame is chosen/map_raised by mouse clicking on mdi title.
That allows to fix an effect discribed by Ilka
"Click on a main frame title bar does not make this frame selected".
- Fix "Ctrl-O" handling in GuiBuilder. Previously it had "Save As" dialog
title instead of "Open ..".
- Forbid Ctrl-S handling if there is no active mdi frame. That fixes an
segv. violation discribed by Ilka when one wants to "SaveAs" GuiBuilder
itself.
- Fix name clashes when TRootEmbeddedCanvas saved. It was discovered
when Cut&Paste embedded canvases during gui building.
Revision
10402 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Oct 25 12:06:50 2004 UTC (10 years, 3 months ago) by
rdm
Original Path:
trunk/gui/src/TRootEmbeddedCanvas.cxx
File length: 10737 byte(s)
Diff to
previous 10393
From Valeriy:
- TGFrame::MustCleanup now returns Int_t value (was Bool_t).
Backward compatible.
- Int_t TGWindow::MustCleanup method added.
- TGTextButton dtor. Checking added. If kDeepCleanup is on call
of GetMainFrame() gave segv.
- in TGMainFrame handing Ctrl-S it was not possible to save macro
in other directory than the current.
- The same fix as above for ROOT GuiBuilder. Thanks to
Christian Stratova for reporting it.
- TGMdiDecorFrame now using hierarchical cleaning. That fixes
many memory leaks and improves robustness of GuiBuilder.
- TRootCanvas/TRootEmbeddedCanvas - disable swithching to
editable mode (canvas became black after that) for container frame.
- Gui Builder highlights any plain composite frame under pointer.
Protection added that highlighted frame exists and is a ROOT frame.
- improvements in TGuiBldQuickHandler. Sometimes it gave segv.
Revision
10393 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Oct 22 15:21:19 2004 UTC (10 years, 3 months ago) by
rdm
Original Path:
trunk/gui/src/TRootEmbeddedCanvas.cxx
File length: 10704 byte(s)
Diff to
previous 10309
From Valeriy:
- now TGViewPort Cleanup method deletes container frame.
- protect TGListBox against double deletion during hierarchical cleaning.
- minor mod in TGListTree. ClassImpQ is obsolete.
- protect TGLVEntry against double deletion during hierarchical cleaning.
- protect TRootEmbededCanvas against double deletion during hierarchical
cleaning.
- protect TRootCanavs against double deletion during hierarchical cleaning.
- TGFontDialog. SetCleanup(kDeepCleanup) aka hierarchical cleaning is used
in destructor.
No segv. occured. That means all frames inside TGFontDialog are
"consistent with hierarchical cleaning".
Now TRootEmbededCanvas deleted without segv. during gui building.
- now TGuiBldQuickHandler is placed centered on parent when map_raised.
- TGuiBldDragManager. Double click on editable frame invokes resize/compact
action of the main-editable frame.
Revision
10309 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Oct 14 07:23:06 2004 UTC (10 years, 3 months ago) by
brun
Original Path:
trunk/gui/src/TRootEmbeddedCanvas.cxx
File length: 10668 byte(s)
Diff to
previous 10303
From Valeriy Onuchin;
- Protect TRootEmbeddedCanvas::SavePrimitive to avoid object's name clashes.
Such clash happens when TCanvas's name is the same as the TRootEmbeddedCanvas name,
which contains this TCanvas.
it is a quite typical case to assign canvas name to some unique name and
it is convenient to asign it to the TRootEmbeddedCanvas's name (which is
unique). This will also make more easy to find in which TRootEmbeddedCanvas
some canvas is embedded.
- correct Help-"About ROOT Gui Builder" according to ROOT licence
Revision
10303 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Oct 13 12:24:08 2004 UTC (10 years, 3 months ago) by
brun
Original Path:
trunk/gui/src/TRootEmbeddedCanvas.cxx
File length: 10561 byte(s)
Diff to
previous 10118
From Valeriy Onuchin:
- TRootEmbeddedCanvas added to GuiBuilder widgets palette
- slightly modified TRootEmbeddedCanvas::SavePrimitive to avoid name clash
- TGFrame::HandleEvent minor mod to activate guibuilding
- correct TGCanvas::MapSubwindows. Previous implementaion always mapped
scrollbars even if they must be unmapped
Revision
7520 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Nov 5 13:08:26 2003 UTC (11 years, 2 months ago) by
rdm
Original Path:
trunk/gui/src/TRootEmbeddedCanvas.cxx
File length: 10222 byte(s)
Diff to
previous 7381
From Ilka:
Any ROOT GUI can now be saved as a macro. Executing this macro brings back
the current GUI (minus the action handling). This very important development
allows to get easily the source for any GUI, which can then be inspected or
used to create other GUI's. Also this will allow a GUI builder to save and
restore GUI's.
To save the source of a GUI use the methods TGMainFrame::SaveSource() or
TGTransientFrame::SaveSource(), where the latter saves the source for dialogs.
To trigger the saving of any GUI just use ctrl-s.
This form allows you to request diffs between any two revisions of this file.
For each of the two "sides" of the diff,
enter a numeric revision.