Commit 7470d333 authored by hrchilds's avatar hrchilds

Update from August 6, 2004

git-svn-id: http://visit.ilight.com/svn/visit/trunk/src@296 18c085ea-50e0-402c-830e-de6fd14e8384
parent 89226ecc
......@@ -10,13 +10,13 @@
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
// ****************************************************************************
GlobalAttributes::GlobalAttributes() : AttributeSubject("s*i*ibbbbbibbbb")
GlobalAttributes::GlobalAttributes() : AttributeSubject("s*i*ibbbbbibbbbb")
{
activeWindow = 1;
iconifiedFlag = false;
......@@ -29,6 +29,7 @@ GlobalAttributes::GlobalAttributes() : AttributeSubject("s*i*ibbbbbibbbb")
cloneWindowOnFirstRef = false;
maintainView = false;
maintainData = false;
automaticallyAddOperator = false;
}
// ****************************************************************************
......@@ -40,13 +41,13 @@ GlobalAttributes::GlobalAttributes() : AttributeSubject("s*i*ibbbbbibbbb")
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
// ****************************************************************************
GlobalAttributes::GlobalAttributes(const GlobalAttributes &obj) : AttributeSubject("s*i*ibbbbbibbbb")
GlobalAttributes::GlobalAttributes(const GlobalAttributes &obj) : AttributeSubject("s*i*ibbbbbibbbbb")
{
sources = obj.sources;
windows = obj.windows;
......@@ -61,6 +62,7 @@ GlobalAttributes::GlobalAttributes(const GlobalAttributes &obj) : AttributeSubje
cloneWindowOnFirstRef = obj.cloneWindowOnFirstRef;
maintainView = obj.maintainView;
maintainData = obj.maintainData;
automaticallyAddOperator = obj.automaticallyAddOperator;
SelectAll();
}
......@@ -74,7 +76,7 @@ GlobalAttributes::GlobalAttributes(const GlobalAttributes &obj) : AttributeSubje
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -94,7 +96,7 @@ GlobalAttributes::~GlobalAttributes()
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -116,6 +118,7 @@ GlobalAttributes::operator = (const GlobalAttributes &obj)
cloneWindowOnFirstRef = obj.cloneWindowOnFirstRef;
maintainView = obj.maintainView;
maintainData = obj.maintainData;
automaticallyAddOperator = obj.automaticallyAddOperator;
SelectAll();
}
......@@ -129,7 +132,7 @@ GlobalAttributes::operator = (const GlobalAttributes &obj)
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -151,7 +154,8 @@ GlobalAttributes::operator == (const GlobalAttributes &obj) const
(makeDefaultConfirm == obj.makeDefaultConfirm) &&
(cloneWindowOnFirstRef == obj.cloneWindowOnFirstRef) &&
(maintainView == obj.maintainView) &&
(maintainData == obj.maintainData));
(maintainData == obj.maintainData) &&
(automaticallyAddOperator == obj.automaticallyAddOperator));
}
// ****************************************************************************
......@@ -163,7 +167,7 @@ GlobalAttributes::operator == (const GlobalAttributes &obj) const
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -184,7 +188,7 @@ GlobalAttributes::operator != (const GlobalAttributes &obj) const
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -205,7 +209,7 @@ GlobalAttributes::TypeName() const
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -233,7 +237,7 @@ GlobalAttributes::CopyAttributes(const AttributeGroup *atts)
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -259,7 +263,7 @@ GlobalAttributes::CreateCompatible(const std::string &tname) const
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -286,7 +290,7 @@ GlobalAttributes::NewInstance(bool copy) const
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -308,6 +312,7 @@ GlobalAttributes::SelectAll()
Select(10, (void *)&cloneWindowOnFirstRef);
Select(11, (void *)&maintainView);
Select(12, (void *)&maintainData);
Select(13, (void *)&automaticallyAddOperator);
}
///////////////////////////////////////////////////////////////////////////////
......@@ -364,6 +369,9 @@ GlobalAttributes::SelectAll()
// Eric Brugger, Tue Mar 30 08:39:07 PST 2004
// I added maintainData.
//
// Brad Whitlock, Thu Aug 5 16:48:46 PST 2004
// I added automaticallyAddOperator.
//
// ****************************************************************************
bool
......@@ -427,6 +435,13 @@ GlobalAttributes::CreateNode(DataNode *parentNode, bool completeSave, bool force
node->AddNode(new DataNode("maintainData", maintainData));
}
if(completeSave || !FieldsEqual(13, &defaultObject))
{
addToParent = true;
node->AddNode(new DataNode("automaticallyAddOperator",
automaticallyAddOperator));
}
// Add the node to the parent node.
if(addToParent || forceAdd)
parentNode->AddNode(node);
......@@ -474,6 +489,9 @@ GlobalAttributes::CreateNode(DataNode *parentNode, bool completeSave, bool force
// Eric Brugger, Tue Mar 30 08:39:07 PST 2004
// I added maintainData.
//
// Brad Whitlock, Thu Aug 5 16:51:14 PST 2004
// I added automaticallyAddOperator.
//
// ****************************************************************************
void
......@@ -503,6 +521,8 @@ GlobalAttributes::SetFromNode(DataNode *parentNode)
SetMaintainView(node->AsBool());
if((node = searchNode->GetNode("maintainData")) != 0)
SetMaintainData(node->AsBool());
if((node = searchNode->GetNode("automaticallyAddOperator")) != 0)
SetAutomaticallyAddOperator(node->AsBool());
}
///////////////////////////////////////////////////////////////////////////////
// Set property methods
......@@ -599,6 +619,13 @@ GlobalAttributes::SetMaintainData(bool maintainData_)
Select(12, (void *)&maintainData);
}
void
GlobalAttributes::SetAutomaticallyAddOperator(bool automaticallyAddOperator_)
{
automaticallyAddOperator = automaticallyAddOperator_;
Select(13, (void *)&automaticallyAddOperator);
}
///////////////////////////////////////////////////////////////////////////////
// Get property methods
///////////////////////////////////////////////////////////////////////////////
......@@ -693,6 +720,12 @@ GlobalAttributes::GetMaintainData() const
return maintainData;
}
bool
GlobalAttributes::GetAutomaticallyAddOperator() const
{
return automaticallyAddOperator;
}
///////////////////////////////////////////////////////////////////////////////
// Select property methods
///////////////////////////////////////////////////////////////////////////////
......@@ -722,7 +755,7 @@ GlobalAttributes::SelectWindows()
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -746,6 +779,7 @@ GlobalAttributes::GetFieldName(int index) const
case 10: return "cloneWindowOnFirstRef";
case 11: return "maintainView";
case 12: return "maintainData";
case 13: return "automaticallyAddOperator";
default: return "invalid index";
}
}
......@@ -759,7 +793,7 @@ GlobalAttributes::GetFieldName(int index) const
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -783,6 +817,7 @@ GlobalAttributes::GetFieldType(int index) const
case 10: return FieldType_bool;
case 11: return FieldType_bool;
case 12: return FieldType_bool;
case 13: return FieldType_bool;
default: return FieldType_unknown;
}
}
......@@ -796,7 +831,7 @@ GlobalAttributes::GetFieldType(int index) const
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -820,6 +855,7 @@ GlobalAttributes::GetFieldTypeName(int index) const
case 10: return "bool";
case 11: return "bool";
case 12: return "bool";
case 13: return "bool";
default: return "invalid index";
}
}
......@@ -833,7 +869,7 @@ GlobalAttributes::GetFieldTypeName(int index) const
// Note: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -911,6 +947,11 @@ GlobalAttributes::FieldsEqual(int index_, const AttributeGroup *rhs) const
retval = (maintainData == obj.maintainData);
}
break;
case 13:
{ // new scope
retval = (automaticallyAddOperator == obj.automaticallyAddOperator);
}
break;
default: retval = false;
}
......
......@@ -51,6 +51,9 @@ Definition:
// Eric Brugger, Tue Mar 30 08:39:07 PST 2004
// I added maintainData.
//
// Brad Whitlock, Thu Aug 5 16:48:46 PST 2004
// I added automaticallyAddOperator.
//
// ****************************************************************************
bool
......@@ -114,6 +117,13 @@ GlobalAttributes::CreateNode(DataNode *parentNode, bool completeSave, bool force
node->AddNode(new DataNode("maintainData", maintainData));
}
if(completeSave || !FieldsEqual(13, &defaultObject))
{
addToParent = true;
node->AddNode(new DataNode("automaticallyAddOperator",
automaticallyAddOperator));
}
// Add the node to the parent node.
if(addToParent || forceAdd)
parentNode->AddNode(node);
......@@ -165,6 +175,9 @@ Definition:
// Eric Brugger, Tue Mar 30 08:39:07 PST 2004
// I added maintainData.
//
// Brad Whitlock, Thu Aug 5 16:51:14 PST 2004
// I added automaticallyAddOperator.
//
// ****************************************************************************
void
......@@ -194,5 +207,7 @@ GlobalAttributes::SetFromNode(DataNode *parentNode)
SetMaintainView(node->AsBool());
if((node = searchNode->GetNode("maintainData")) != 0)
SetMaintainData(node->AsBool());
if((node = searchNode->GetNode("automaticallyAddOperator")) != 0)
SetAutomaticallyAddOperator(node->AsBool());
}
......@@ -13,7 +13,7 @@
// Notes: Autogenerated by xml2atts.
//
// Programmer: xml2atts
// Creation: Tue Mar 30 09:27:59 PDT 2004
// Creation: Thu Aug 5 16:52:19 PST 2004
//
// Modifications:
//
......@@ -54,6 +54,7 @@ public:
void SetCloneWindowOnFirstRef(bool cloneWindowOnFirstRef_);
void SetMaintainView(bool maintainView_);
void SetMaintainData(bool maintainData_);
void SetAutomaticallyAddOperator(bool automaticallyAddOperator_);
// Property getting methods
const stringVector &GetSources() const;
......@@ -71,6 +72,7 @@ public:
bool GetCloneWindowOnFirstRef() const;
bool GetMaintainView() const;
bool GetMaintainData() const;
bool GetAutomaticallyAddOperator() const;
// Persistence methods
virtual bool CreateNode(DataNode *node, bool completeSave, bool forceAdd);
......@@ -97,6 +99,7 @@ private:
bool cloneWindowOnFirstRef;
bool maintainView;
bool maintainData;
bool automaticallyAddOperator;
};
#endif
......@@ -37,6 +37,9 @@
<Field name="maintainData" label="maintainData" type="bool">
false
</Field>
<Field name="automaticallyAddOperator" label="automaticallyAddOperator" type="bool">
false
</Field>
<Function name="CreateNode" user="false" member="true">
</Function>
<Function name="SetFromNode" user="false" member="true">
......
......@@ -3400,10 +3400,13 @@ avtDefaultPlotMetaData::Print(ostream &out, int indent) const
// Brad Whitlock, Fri Jul 23 12:33:17 PDT 2004
// Added database comment.
//
// Brad Whitlock, Thu Aug 5 13:51:24 PST 2004
// Added mustAlphabetizeVariables.
//
// ****************************************************************************
avtDatabaseMetaData::avtDatabaseMetaData()
: AttributeSubject("sssbddibss*i*i*i*d*a*a*a*a*a*a*a*a*a*aba*bsib")
: AttributeSubject("sssbddibss*i*i*i*d*a*a*a*a*a*a*a*a*a*aba*bsibb")
{
hasTemporalExtents = false;
minTemporalExtents = 0.;
......@@ -3411,6 +3414,7 @@ avtDatabaseMetaData::avtDatabaseMetaData()
numStates = 0;
isVirtualDatabase = false;
mustRepopulateOnStateChange = false;
mustAlphabetizeVariables = true;
isSimulation = false;
simHost = "";
simPort = 0;
......@@ -3468,10 +3472,13 @@ avtDatabaseMetaData::avtDatabaseMetaData()
// Brad Whitlock, Fri Jul 23 12:35:54 PDT 2004
// Added databaseComment.
//
// Brad Whitlock, Thu Aug 5 13:52:20 PST 2004
// Added mustAlphabetizeVariables.
//
// ****************************************************************************
avtDatabaseMetaData::avtDatabaseMetaData(const avtDatabaseMetaData &rhs)
: AttributeSubject("sssbddibss*i*i*i*d*a*a*a*a*a*a*a*a*a*aba*bsib")
: AttributeSubject("sssbddibss*i*i*i*d*a*a*a*a*a*a*a*a*a*aba*bsibb")
{
databaseName = rhs.databaseName;
fileFormat = rhs.fileFormat;
......@@ -3482,6 +3489,7 @@ avtDatabaseMetaData::avtDatabaseMetaData(const avtDatabaseMetaData &rhs)
numStates = rhs.numStates;
isVirtualDatabase = rhs.isVirtualDatabase;
mustRepopulateOnStateChange = rhs.mustRepopulateOnStateChange;
mustAlphabetizeVariables = rhs.mustAlphabetizeVariables;
useCatchAllMesh = rhs.useCatchAllMesh;
timeStepPath = rhs.timeStepPath;
timeStepNames = rhs.timeStepNames;
......@@ -3569,6 +3577,9 @@ avtDatabaseMetaData::avtDatabaseMetaData(const avtDatabaseMetaData &rhs)
// Brad Whitlock, Fri Jul 23 12:36:47 PDT 2004
// Added databaseComment.
//
// Brad Whitlock, Thu Aug 5 13:52:20 PST 2004
// Added mustAlphabetizeVariables.
//
// ****************************************************************************
const avtDatabaseMetaData &
......@@ -3583,6 +3594,7 @@ avtDatabaseMetaData::operator=(const avtDatabaseMetaData &rhs)
numStates = rhs.numStates;
isVirtualDatabase = rhs.isVirtualDatabase;
mustRepopulateOnStateChange = rhs.mustRepopulateOnStateChange;
mustAlphabetizeVariables = rhs.mustAlphabetizeVariables;
useCatchAllMesh = rhs.useCatchAllMesh;
timeStepPath = rhs.timeStepPath;
timeStepNames = rhs.timeStepNames;
......@@ -5179,6 +5191,9 @@ avtDatabaseMetaData::Print(ostream &out, int indent) const
// Brad Whitlock, Fri Jul 23 12:38:24 PDT 2004
// Added database comment.
//
// Brad Whitlock, Thu Aug 5 13:53:53 PST 2004
// Added mustAlphabetizeVariables.
//
// *******************************************************************
void
......@@ -5217,6 +5232,7 @@ avtDatabaseMetaData::SelectAll()
Select(27, (void*)&simHost);
Select(28, (void*)&simPort);
Select(29, (void*)&useCatchAllMesh);
Select(30, (void*)&mustAlphabetizeVariables);
}
// *******************************************************************
......
......@@ -376,6 +376,7 @@ class DBATTS_API avtDatabaseMetaData : public AttributeSubject
int numStates;
bool isVirtualDatabase;
bool mustRepopulateOnStateChange;
bool mustAlphabetizeVariables;
bool isSimulation;
std::string simHost;
......@@ -422,6 +423,11 @@ public:
bool GetMustRepopulateOnStateChange(void) const
{ return mustRepopulateOnStateChange; };
void SetMustAlphabetizeVariables(bool mode)
{ mustAlphabetizeVariables = mode; };
bool GetMustAlphabetizeVariables() const
{ return mustAlphabetizeVariables; };
bool GetUseCatchAllMesh(void) const
{ return useCatchAllMesh; };
void SetUseCatchAllMesh(bool useIt)
......
......@@ -1025,6 +1025,9 @@ avtBoxlib2DFileFormat::GetVisMF(int index)
// Hank Childs, Wed Feb 18 10:46:42 PST 2004
// Display all scalar variables, whether or not they are used elsewhere.
//
// Brad Whitlock, Thu Aug 5 15:52:53 PST 2004
// Prevent VisIt from alphabetizing the variable lists.
//
// ****************************************************************************
void
......@@ -1038,6 +1041,9 @@ avtBoxlib2DFileFormat::PopulateDatabaseMetaData(avtDatabaseMetaData *md)
for (level = 0 ; level < nLevels ; level++)
totalPatches += patchesPerLevel[level];
// Prevent VisIt from sorting the variables.
md->SetMustAlphabetizeVariables(false);
char mesh_name[32] = "Mesh";
avtMeshMetaData *mesh = new avtMeshMetaData;
mesh->name = mesh_name;
......
......@@ -1149,6 +1149,9 @@ avtBoxlib3DFileFormat::GetVisMF(int index)
// Hank Childs, Wed Feb 18 10:46:42 PST 2004
// Expose all scalar variables whether or not they are used elsewhere.
//
// Brad Whitlock, Thu Aug 5 15:52:53 PST 2004
// Prevent VisIt from alphabetizing the variable lists.
//
// ****************************************************************************
void
......@@ -1162,6 +1165,9 @@ avtBoxlib3DFileFormat::PopulateDatabaseMetaData(avtDatabaseMetaData *md)
for (level = 0 ; level < nLevels ; level++)
totalPatches += patchesPerLevel[level];
// Prevent VisIt from sorting the variables.
md->SetMustAlphabetizeVariables(false);
char mesh_name[32] = "Mesh";
avtMeshMetaData *mesh = new avtMeshMetaData;
mesh->name = mesh_name;
......
......@@ -51,6 +51,9 @@
// Brad Whitlock, Wed May 14 15:38:40 PST 2003
// I added support for virtual databases being expanded by default.
//
// Brad Whitlock, Thu Aug 5 17:36:02 PST 2004
// I added methods to look for long node names.
//
// ****************************************************************************
class FileTree
......@@ -72,6 +75,7 @@ public:
FileTreeNode *Find(const std::string &path);
int Size() const;
bool HasChildrenOfType(int type);
bool HasNodeNameExceeding(int len) const;
void AddElementsToListViewItem(QListViewItem *item, int &fileIndex,
bool addRoot,
const QPixmap &folderPixmap,
......@@ -108,6 +112,7 @@ public:
void Reduce();
int Size() const;
bool TreeContainsDirectories() const;
bool HasNodeNameExceeding(int len) const;
void AddElementsToListViewItem(QListViewItem *item, int &fileIndex,
const QPixmap &folderPixmap,
......@@ -525,6 +530,10 @@ QvisFilePanel::UpdateFileList(bool doAll)
// Added code to force file lists that have MT databases always have a root
// so they can be collapsed.
//
// Brad Whitlock, Thu Aug 5 17:36:33 PST 2004
// I added code to detect when node names are long and set the horizontal
// scrollbar mode of the listview appropriately.
//
// ****************************************************************************
void
......@@ -574,6 +583,9 @@ QvisFilePanel::RepopulateFileList()
// Reset the node numbers that will be used to create the nodes.
QvisListViewFileItem::resetNodeNumber();
// Assume that we want automatic scrollbars instead of always having them.
QScrollView::ScrollBarMode hScrollMode = QScrollView::Auto;
// If there are multiple hosts or just one and it is not localhost,
// add nodes in the file tree for the host. This makes sure that it
// is always clear which host a file came from.
......@@ -614,6 +626,11 @@ QvisFilePanel::RepopulateFileList()
}
files.Reduce();
// If there are any nodes with long names then we should have
// scrollbars in the selected files list.
if(files.HasNodeNameExceeding(30))
hScrollMode = QScrollView::AlwaysOn;
// Add all the elements in the files list to the host list
// view item.
files.AddElementsToListViewItem(newFile, fileIndex,
......@@ -633,6 +650,11 @@ QvisFilePanel::RepopulateFileList()
// debug1 << "File Tree:\n" << files << endl << endl;
// If there are any nodes with long names then we should have
// scrollbars in the selected files list.
if(files.HasNodeNameExceeding(30))
hScrollMode = QScrollView::AlwaysOn;
// If there are top level directories in the file tree, then we
// need to create a node for the host.
if(files.TreeContainsDirectories() ||
......@@ -662,6 +684,13 @@ QvisFilePanel::RepopulateFileList()
}
}
//
// Set the list view's scrollbar mode.
//
bool hScrollModeChanged = (hScrollMode != fileListView->hScrollBarMode());
if(hScrollModeChanged)
fileListView->setHScrollBarMode(hScrollMode);
// Expand any databases that we know about. This just means that we add
// the extra information that databases have, we don't expand the tree
// until we enter UpdateFileSelection.
......@@ -671,7 +700,14 @@ QvisFilePanel::RepopulateFileList()
UpdateFileSelection();
// Set the width of the zeroeth column.
QTimer::singleShot(100, this, SLOT(updateHeaderWidth()));
if(hScrollMode == QScrollView::AlwaysOn)
QTimer::singleShot(100, this, SLOT(updateHeaderWidthForLongName()));
else
QTimer::singleShot(100, this, SLOT(updateHeaderWidth()));
// If the scroll mode changed, force the list view to update.
if(hScrollModeChanged)
QTimer::singleShot(110, fileListView, SLOT(triggerUpdate()));
}
// ****************************************************************************
......@@ -3098,6 +3134,44 @@ QvisFilePanel::updateHeaderWidth()
fileListView->setColumnWidth(0, fileListView->visibleWidth());
}
// ****************************************************************************
// Method: QvisFilePanel::updateHeaderWidthForLongName
//
// Purpose:
// This is a Qt slot function that updates the width of the first column
// so it is as wide as the longest node name in the file tree. This allows
// the horizontal scrollbar to be active.
//
// Programmer: Brad Whitlock
// Creation: Fri Aug 6 12:17:46 PDT 2004
//
// Modifications:
//
// ****************************************************************************
void
QvisFilePanel::updateHeaderWidthForLongName()
{
if(fileListView->childCount() < 1)
updateHeaderWidth();
else
{
int maxWidth = 0;
QListViewItemIterator it(fileListView);
for ( ; it.current(); ++it )
{
int w = it.current()->width(fontMetrics(), fileListView, 0);
if(w > maxWidth)
maxWidth = w;
}
if(maxWidth < fileListView->visibleWidth())
maxWidth = fileListView->visibleWidth();
fileListView->setColumnWidth(0, maxWidth);
}
}
// ****************************************************************************
// Method: QvisFilePanel::changeActiveTimeSlider
//
......@@ -3438,6 +3512,26 @@ FileTree::AddElementsToListView(QListView *listview, int &fileIndex,
databasePixmap, filePanel);
}
// ****************************************************************************
// Method: FileTree::HasNodeNameExceeding
//
// Purpose:
// Returns whether the nodes in the tree have a node name that exceeds the
// specified length.
//
// Programmer: Brad Whitlock
// Creation: Thu Aug 5 17:34:58 PST 2004
//
// Modifications:
//
// ****************************************************************************
bool
FileTree::HasNodeNameExceeding(int len) const
{
return (root != 0) ? root->HasNodeNameExceeding(len) : false;
}
// ****************************************************************************
// Method: FileTree::operator <<
//
......@@ -3798,6 +3892,39 @@ FileTree::FileTreeNode::HasChildrenOfType(int type)
return retval;
}
// ****************************************************************************
// Method: FileTree::FileTreeNode::HasNodeNameExceeding
//
// Purpose:
// Returns whether any of the nodes in the tree have a node name that is
// longer than the specified length.
//
// Arguments:
// len : The specified node name length.
//
// Programmer: Brad Whitlock
// Creation: Thu Aug 5 17:32:29 PST 2004
//
// Modifications:
//
// ****************************************************************************
bool
FileTree::FileTreeNode::HasNodeNameExceeding(int len) const
{
if(nodeName.size() > len)
return true;
// Check the children.
for(int i = 0; i < numChildren; ++i)
{
if(children[i]->HasNodeNameExceeding(len))
return true;
}
return false;
}
// ****************************************************************************
// Method: FileTree::FileTreeNode::AddElementsToListViewItem
//
......
......@@ -96,6 +96,9 @@ class ViewerProxy;
// Brad Whitlock, Tue Apr 6 14:06:25 PST 2004
// I added allowFileSelectionChange.
//
// Brad Whitlock, Fri Aug 6 12:19:22 PDT 2004
// I added updateHeaderForLongName.
//
// ****************************************************************************
class GUI_API QvisFilePanel : public QWidget, public SimpleObserver, public GUIBase
......@@ -197,6 +200,7 @@ private slots:
void replaceFile();
void overlayFile();
void updateHeaderWidth();
void updateHeaderWidthForLongName();
void internalUpdateFileList();
private:
bool showSelectedFiles;
......
......@@ -924,6 +924,8 @@ QvisMainWindow::UpdateGlobalArea(bool doAll)
maintainDataCheckBox->setChecked(globalAtts->GetMaintainData());
maintainDataCheckBox->blockSignals(false);
break;
case 13: // automaticallyAddOperator
break;
}
} // end for
}
......
......@@ -136,6 +136,10 @@ QvisOperatorWindow::GetCurrentValues(int)
// but let the operator know to initalize from client via a flag passed