Log of /trunk/gui/gui/src/TGListView.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: 57903 byte(s)
Diff to
previous 42641
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
24836 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Jul 15 15:20:50 2008 UTC (6 years, 6 months ago) by
bellenot
File length: 54796 byte(s)
Diff to
previous 23115
- Correct container size (add size of headers) to
be able to see the last entry in details mode...
- correct identation
Revision
22997 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Apr 7 07:28:45 2008 UTC (6 years, 9 months ago) by
antcheva
Original Path:
trunk/gui/src/TGListView.cxx
File length: 54703 byte(s)
Diff to
previous 22679
From Bertrand:
- Re-implement the rubber-band rectangle selection in TGCanvas
(i.e. for TGListView). Was lost in revision 19665
- Improve active/inactive switching during multiple selection
- Improve auto-scrolling when going out of TGCanvas boundaries
Revision
19665 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Aug 22 08:50:02 2007 UTC (7 years, 5 months ago) by
antcheva
Original Path:
trunk/gui/src/TGListView.cxx
File length: 54496 byte(s)
Diff to
previous 19235
From Valeriy Onuchin (tested by Bertrand):
o TGLayoutManager::IsModified method was overloaded.
This method is used to indicate that sub frames
changed/unchanged their positions/sizes after layout.
For example, in some cases positions&sizes of sub frames
can be unchanged after calling Layout method
(e.g. for TGTileLayout manager).
TGLayoutManager::IsModified will return kFALSE.
o TGListBox.h,cxx, TGCanvas.h,cxx, TGListTree.h,cxx,
TGListView.h,cxx
- new painting technique was implemented:
1. repaint only exposed/dirty regions.
Previously the whole view port (or even container frame)
was repainted.
2. use double-buffering (using back plane pixmap) during
repainting.
That allows to eliminate flickering during resizing,
scrolling, exposing/overlapping.
- several bugs were fixed:
o keyboard navigation in list view, list box, list tree
o resizing columns (details view) in list view
when horizontal scroll bar not in zero position.
o in list view (details view) buttons were moved when
it was resized.
o extra unnecessary repainting in list view, list tree
were removed.
o probably I missed something to mention .
o TGScrollBar
- bug fix: increment value was reset to 1 after button release.
- do not redraw scroll button if it's width/height was unchanged.
That reduces flickering
Revision
15966 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Aug 9 16:11:01 2006 UTC (8 years, 5 months ago) by
antcheva
Original Path:
trunk/gui/src/TGListView.cxx
File length: 49586 byte(s)
Diff to
previous 15879
From David Gonzalez Maline:
- sort files by owner and group
- added tooltips to the header buttons as hints for sorting features
(Note: sometimes, the system doesn't grab well the information
about the group, i.e. doesn't get the correct group name. It takes the
same name as the user instead)
Revision
15844 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Jul 24 16:11:45 2006 UTC (8 years, 6 months ago) by
rdm
Original Path:
trunk/gui/src/TGListView.cxx
File length: 41447 byte(s)
Diff to
previous 15819
From David Gonzalez Maline and Bertrand:
A bunch of modifications in TGFileDialog (mainly user requests):
- Sort files by name and not by type anymore.
- Increased the vertical scroll size.
- Implemented multiple file selection; can be turned on/off with a
checkbox on the TGFileDialog.
Here is an example of how to use multiple selection:
TGFileInfo fi;
new TGFileDialog(fClient->GetDefaultRoot(), this, kFDOpen,&fi);
if (fi.fMultipleSelection && fi.fFileNamesList) {
TObjString *el;
TIter next(fi.fFileNamesList);
while ((el = (TObjString *) next())) {
new TFile(el->GetString(), "update");
}
}
else if (fi.fFilename) {
new TFile(fi.fFilename, "update");
}
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/TGListView.cxx
File length: 35755 byte(s)
Diff to
previous 15393
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
12658 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Sep 5 14:21:53 2005 UTC (9 years, 4 months ago) by
rdm
Original Path:
trunk/gui/src/TGListView.cxx
File length: 34800 byte(s)
Diff to
previous 12372
from Bertrand:
add new check box feature to TGListTree widget. This option allows checkboxes
on the tree nodes to turn on/off pieces of the tree hierarchy. Used in the
ROOT browser to toggle visibility of geometries.
In TGListTree see for example the new methods:
void CheckItem(TGListTreeItem *item, Bool_t check = kTRUE);
void SetCheckBox(TGListTreeItem *item, Bool_t on = kTRUE);
void ToggleItem(TGListTreeItem *item);
void Checked(TObject *obj, Bool_t check); //*SIGNAL*
and the checkbox option in:
AddItem(..., Bool_t checkbox);
Revision
11898 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri May 27 12:24:44 2005 UTC (9 years, 8 months ago) by
rdm
Original Path:
trunk/gui/src/TGListView.cxx
File length: 33952 byte(s)
Diff to
previous 11872
From Valeriy:
-TASImage:
o CreateThumbnail() - add more contrastness to generated thumbnails
o GetMask() - gVirtualX->CreateBitmap requires a width of input bitmap to be
even to 8 . This mod fixes the problem of XPM images reading.
- TGListView - more corrections in adjusting page position after
changing vew mode.
- TGPicture. Prblem with reading XPM files via TImage is fixed
(TASImage::GetMask) I removed platform dependent code.
- TRootBrowser
o minory mod in dynamic thumbnal generation
o possibility to navigate through "browsing history" added.
o 3 new buttons added to ROOT browser toolbar -
"Back", "Forward", "Refresh"
- root.mimes - minory mods.
Revision
11867 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed May 25 16:20:54 2005 UTC (9 years, 8 months ago) by
brun
Original Path:
trunk/gui/src/TGListView.cxx
File length: 33415 byte(s)
Diff to
previous 11862
From valeriy Onuchin:
- two new features added to ROOT browser
1. on double-click on a ROOT file browser opens up "ROOT Files" folder
in list tree (left pan) with newly opened file and displays this file in
the right pan.
It makes browser navigation more simpler and more intuitive.
2. Auto generation of thumbnails for browsed files was added.
To test this feature try to browse any macro in ROOT tutorials or some
image file.
If executed macro creates a new canvas the 32x32 pixel image from this
canvas
became a thumbnail for this file.
This feature can be switched on/off in the ROOT resource file by
changing
3. TGListTree. Some protected methods were made public.
Browser.AutoThumbnail: yes (or no)
Revision
11862 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue May 24 20:05:10 2005 UTC (9 years, 8 months ago) by
brun
Original Path:
trunk/gui/src/TGListView.cxx
File length: 33397 byte(s)
Diff to
previous 10904
From Valeriy Onuchin:
- root.mimes. Default actions changed for some image types (*.png, *.gif,
*.jpg etc.)
Drawing images in canvas is better than drawing it as TGPictureButton.
Image drawn in canvas can be processed via context menu, scaled, resized
etc.
- TPad::Print - roll-back recent changes in GIF saving. Use again
TVirtualX::WriteGIF
method for saving GIF files which produces much smaller files.
BTW, the patent on LZW compression was expired july 2004. So, making
GIF is now legal.
- TGMimeTypes - fix nasty typo-bug in GetIcon method. The effect of the
bug was appeared as
no large icons were displayed for qq.png, qq.gif etc. files types.
- TGPicture - minory mods
- TGFileContainer::GetFilePictures - optimised for speed. To test a gain
in performance -
run TBrowser on slow computer and open up $ROOTSYS/icons directory.
New data member TGFileContainer::fCachePictures was added which allows
to switch on/off this mechanism.
- TRootBrowser. Weired "refresh behavior" was fixed - when some macro was
browsed/executed and then canvas was deleted, browser's icon box was
refreshed and
currrent "page position" was changed to the most upper one.
Now page position remains on the same place.
- Refresh TBrowser on F5 pressed action added.
- TGLVEntry - SetPictures method added, whic allows to change list view
entry pictures dynamically.
- TSystemFile. SetIconName, GetIconName methods addd
Revision
10904 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Jan 12 18:39:30 2005 UTC (10 years ago) by
brun
Original Path:
trunk/gui/src/TGListView.cxx
File length: 32923 byte(s)
Diff to
previous 10753
From Valeriy Onuchin:
- new concept of "pseudo-window" introduced.
pseudo-window - is an object inherited from TGWindow which
is not created by window system (X11 or M$ Windows).
It does not consume window system resouces.
The main use-case of pseudo-windows is GUI containers
with very large number of items. For example, listviews, listboxes,
where listview/listbox items/entries are pseudo-windows.
Pseudo-window has "window id" equal to zero.
In order to "activate pseudo-window concept" the parent should
have fIsMapSubwindows dat member to be kFALSE.
So, it's backward compatible, setting fIsMapSubwindows=kTRUE in parent window
will activate normal behavior, i.e. will be created in window system.
Introduction of "pseudo-window concept" forced the changes in
TGX11, TGWin32 classes to avoid TVirtualX methods execution when
"window id" is NULL (the case of pseudo-window).
Introduction of pseudo-windows which do not consume window system resouces
greately improved performance of TGListView, TGListBox, TGComboBox objects.
Now it's possible to have these containers with more than 10000 items.
- some optimization in TGLBContainer drawing
- add SetWindowName to most GUI classes. It's very usefull for GUI debugging.
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/TGListView.cxx
File length: 33173 byte(s)
Diff to
previous 10317
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
7683 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Dec 3 00:25:19 2003 UTC (11 years, 1 month ago) by
brun
Original Path:
trunk/gui/src/TGListView.cxx
File length: 32988 byte(s)
Diff to
previous 7547
From Valeriy Onuchin:
- SetDefaultWidth, SetDefaultHeight methods introduced to
TGLayoutManager class. That allows to force setting default size to
listview container.
Along with changes in listview related classes that fixes
1. "missing horizontal scroll bar in detailed view" bug.
2. "mess in the names in detailed view" bug.
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/TGListView.cxx
File length: 32752 byte(s)
Diff to
previous 6938
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.
Revision
6869 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Jul 9 12:34:36 2003 UTC (11 years, 6 months ago) by
rdm
Original Path:
trunk/gui/src/TGListView.cxx
File length: 29755 byte(s)
Diff to
previous 6863
Some mods by Valeriy:
- new method TGLVEntry::SetSubnames added simplifies setting entry
subnames (for detail view layout)
- new method TGLVContainer::SetColHeaders added
simplifies setting column names (for detail view layout)
- minor mods in TGLVContainer class
- guitest.C/guitest.cxx
fix detail view layout in TestFileList widget
- add an example of usage of TGLVEntry::SetSubnames,TGLVcontainer::SetSubnames
methods in TestFileList widget
Revision
6863 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Jul 8 19:42:07 2003 UTC (11 years, 6 months ago) by
brun
Original Path:
trunk/gui/src/TGListView.cxx
File length: 25779 byte(s)
Diff to
previous 6663
From Valery Onuchin
- I added new example to guitest which demonstrates
how to use TGFileContainer/TGContainer classes.
This example along with TestListDir example added previously
reproduces general functionality of TRootBrowser
- added new simplified constructor to TGLVEntry class
- add new method
TGMenuBar::AddPopup(const TString &s, Int_t padleft, Int_t padright,
Int_t padtop, Int_t padbottom)
which also simplifies adding of popup-menus
- mods in TGFSContainer.h which allow to make #include <TGFSContainer.h>
during ROOT session
Revision
6663 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed May 28 11:55:32 2003 UTC (11 years, 8 months ago) by
rdm
Original Path:
trunk/gui/src/TGListView.cxx
File length: 24318 byte(s)
Diff to
previous 5581
major changes in the resource management of the GUI classes. Introduced the
new class TGResourcePool which loads and keeps track of the 3 main resource
pools: fonts, picture and graphics contexts. Fonts are now handled via the
new TGFont class (and TGFontPool). In the past the loading of these resources
was done in TGClient and required all GUI classes to have TGClient as friend
to have their global statics initialized by TGClient. Adding a new widget
required TGClient.cxx to be changed too. This was obviously not good.
In addition it is now possible to find the full definition of the original
resource back based on a resource handle (GContext_t or FontStruct_t yielding
a TGGC or TGFont) which is needed for the SavePrimitive() functionality.
The resource pool can be found via TGClient (e.g. gClient->GetResourcePool()).
To see all active graphics contexts, fonts and pictures do:
gClient->GetResourcePool()->GetGCPool()->Print()
gClient->GetResourcePool()->GetFontPool()->Print()
gClient->GetResourcePool()->GetPicturePool()->Print()
For more examples see the widget source code.
These changes are largely backward compatible except maybe for some low
level 3rd party widgets that use some TGFrame internals. In these cases
the following sed command will patch the code:
sed -e "s/fgBlackGC()/GetBlackGC()()/g" \
-e "s/fgWhiteGC()/GetWhiteGC()()/g" \
-e "s/fgHilightGC()/GetHilightGC()()/g" \
-e "s/fgShadowGC()/GetShadowGC()()/g" \
-e "s/fgBckgndGC()/GetBckgndGC()()/g" \
widget.cxx > widget.cxx.new
Revision
5413 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Oct 10 17:09:06 2002 UTC (12 years, 3 months ago) by
rdm
Original Path:
trunk/gui/src/TGListView.cxx
File length: 22881 byte(s)
Diff to
previous 4973
widget improvements by Valeriy Onuchin. In particular the TGListTree
should now be able to handle very large tree's (not limited anymore by
the bitmap size). Added key navigation options to TGListTree and some
new signals.
Revision
4695 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Jun 12 17:56:25 2002 UTC (12 years, 7 months ago) by
rdm
Original Path:
trunk/gui/src/TGListView.cxx
File length: 22185 byte(s)
Diff to
previous 4692
remove TGLVEntry *TGListView::GetNextSelected(void**) since it had only
a different return type from TGFrame *TGContainer::GetNextSelected(void**).
In two cases where a TGLVEntry* as return type was expected now as cast to
TGLVEntry* has to be made.
Revision
685 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Sep 29 08:57:05 2000 UTC (14 years, 3 months ago) by
rdm
Original Path:
trunk/gui/src/TGListView.cxx
File length: 26353 byte(s)
Diff to
previous 624
many change connected with the introduction of the TGGC (graphics context)
class (all backward compatible). Also many of the static default GC's and
fontstructs are now available to the user. This can simplify code in many
places. See change in guitest.cxx.
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.