Changeset 3b1798 for src


Ignore:
Timestamp:
Oct 19, 2014, 5:12:37 PM (10 years ago)
Author:
Frederik Heber <heber@…>
Branches:
Action_Thermostats, Add_AtomRandomPerturbation, Add_FitFragmentPartialChargesAction, Add_RotateAroundBondAction, Add_SelectAtomByNameAction, Added_ParseSaveFragmentResults, AddingActions_SaveParseParticleParameters, Adding_Graph_to_ChangeBondActions, Adding_MD_integration_tests, Adding_ParticleName_to_Atom, Adding_StructOpt_integration_tests, AtomFragments, Automaking_mpqc_open, AutomationFragmentation_failures, Candidate_v1.5.4, Candidate_v1.6.0, Candidate_v1.6.1, ChangeBugEmailaddress, ChangingTestPorts, ChemicalSpaceEvaluator, CombiningParticlePotentialParsing, Combining_Subpackages, Debian_Package_split, Debian_package_split_molecuildergui_only, Disabling_MemDebug, Docu_Python_wait, EmpiricalPotential_contain_HomologyGraph, EmpiricalPotential_contain_HomologyGraph_documentation, Enable_parallel_make_install, Enhance_userguide, Enhanced_StructuralOptimization, Enhanced_StructuralOptimization_continued, Example_ManyWaysToTranslateAtom, Exclude_Hydrogens_annealWithBondGraph, FitPartialCharges_GlobalError, Fix_BoundInBox_CenterInBox_MoleculeActions, Fix_ChargeSampling_PBC, Fix_ChronosMutex, Fix_FitPartialCharges, Fix_FitPotential_needs_atomicnumbers, Fix_ForceAnnealing, Fix_IndependentFragmentGrids, Fix_ParseParticles, Fix_ParseParticles_split_forward_backward_Actions, Fix_PopActions, Fix_QtFragmentList_sorted_selection, Fix_Restrictedkeyset_FragmentMolecule, Fix_StatusMsg, Fix_StepWorldTime_single_argument, Fix_Verbose_Codepatterns, Fix_fitting_potentials, Fixes, ForceAnnealing_goodresults, ForceAnnealing_oldresults, ForceAnnealing_tocheck, ForceAnnealing_with_BondGraph, ForceAnnealing_with_BondGraph_continued, ForceAnnealing_with_BondGraph_continued_betteresults, ForceAnnealing_with_BondGraph_contraction-expansion, FragmentAction_writes_AtomFragments, FragmentMolecule_checks_bonddegrees, GeometryObjects, Gui_Fixes, Gui_displays_atomic_force_velocity, ImplicitCharges, IndependentFragmentGrids, IndependentFragmentGrids_IndividualZeroInstances, IndependentFragmentGrids_IntegrationTest, IndependentFragmentGrids_Sole_NN_Calculation, JobMarket_RobustOnKillsSegFaults, JobMarket_StableWorkerPool, JobMarket_unresolvable_hostname_fix, MoreRobust_FragmentAutomation, ODR_violation_mpqc_open, PartialCharges_OrthogonalSummation, PdbParser_setsAtomName, PythonUI_with_named_parameters, QtGui_reactivate_TimeChanged_changes, Recreated_GuiChecks, Rewrite_FitPartialCharges, RotateToPrincipalAxisSystem_UndoRedo, SaturateAtoms_findBestMatching, SaturateAtoms_singleDegree, StoppableMakroAction, Subpackage_CodePatterns, Subpackage_JobMarket, Subpackage_LinearAlgebra, Subpackage_levmar, Subpackage_mpqc_open, Subpackage_vmg, Switchable_LogView, ThirdParty_MPQC_rebuilt_buildsystem, TrajectoryDependenant_MaxOrder, TremoloParser_IncreasedPrecision, TremoloParser_MultipleTimesteps, TremoloParser_setsAtomName, Ubuntu_1604_changes, stable
Children:
0516fd, 4da4de
Parents:
5c8807
git-author:
Frederik Heber <heber@…> (09/19/14 11:19:18)
git-committer:
Frederik Heber <heber@…> (10/19/14 17:12:37)
Message:

FIX: QtHomologyList's plot widget was too high (and fixed).

  • also the sizes of splitter's children in QtHomologyList are now stored to settings (as QsizePolicy does not have an effect on a splitter).
Location:
src/UIElements/Views/Qt4
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • src/UIElements/Views/Qt4/Plotting/QSeisPlotPage.cpp

    r5c8807 r3b1798  
    2525
    2626QSeisPlotPage::QSeisPlotPage(QString type, QWidget *parent) :
    27         QWidget(parent), plotType(type)
     27        QWidget(parent),
     28        plotType(type),
     29        curveList(NULL),
     30        plot (NULL),
     31        layoutInitialized(false)
    2832{
    2933    //create GUI elements
    30     QHBoxLayout *layout = new QHBoxLayout(this);
    31     curveList = new QListWidget(this);
    32     curveList->setMaximumWidth(250);
    33     plot = new QSeisPlot(this,type);
    34     layout->addWidget(curveList);
    35     layout->addWidget(plot);
     34    layout = new QHBoxLayout(this);
    3635    setLayout(layout);
    3736
    38     connect(curveList, SIGNAL(itemChanged(QListWidgetItem*)), this, SLOT(listItemChanged(QListWidgetItem*)));
    3937}
    4038
    4139QSeisPlotPage::~QSeisPlotPage()
    4240{
     41    deinitializeLayout();
     42}
    4343
     44void QSeisPlotPage::initializeLayout()
     45{
     46    curveList = new QListWidget(this);
     47    curveList->setMaximumWidth(250);
     48    connect(curveList, SIGNAL(itemChanged(QListWidgetItem*)), this, SLOT(listItemChanged(QListWidgetItem*)));
     49    plot = new QSeisPlot(this,plotType);
     50    plot->setMinimumHeight(10);
     51    layout->addWidget(curveList);
     52    layout->addWidget(plot);
     53    layoutInitialized = true;
     54}
     55
     56void QSeisPlotPage::deinitializeLayout()
     57{
     58    disconnect(curveList, SIGNAL(itemChanged(QListWidgetItem*)), this, SLOT(listItemChanged(QListWidgetItem*)));
     59    layout->removeWidget(curveList);
     60    layout->removeWidget(plot);
     61    delete curveList;
     62    delete plot;
     63    layoutInitialized = false;
    4464}
    4565
     
    5676void QSeisPlotPage::addCurve(std::string name)
    5777{
     78    if (!layoutInitialized)
     79      initializeLayout();
     80
    5881    QSeisPlotCurve *curve = QSeisCurveRegistry::getInstance().getByName(name);
    5982    QListWidgetCurveItem *item = new QListWidgetCurveItem();
     
    90113        }
    91114    }
     115
     116    if (curveList->count() == 0)
     117      deinitializeLayout();
    92118}
    93119
  • src/UIElements/Views/Qt4/Plotting/QSeisPlotPage.hpp

    r5c8807 r3b1798  
    1616#include <QtGui/QWidget>
    1717
     18class QHBoxLayout;
    1819class QSeisPlot;
    1920class QListWidgetItem;
     
    3334    ~QSeisPlotPage();
    3435    QString plotType;
     36    QHBoxLayout *layout;
    3537    QListWidget *curveList;
    3638    QSeisPlot *plot;
     
    4850    void updateCurve(std::string name);
    4951
     52private:
     53    void initializeLayout();
     54    void deinitializeLayout();
     55    bool layoutInitialized;
    5056};
    5157
  • src/UIElements/Views/Qt4/QtHomologyList.cpp

    r5c8807 r3b1798  
    4141#include <QtGui/QTreeWidget>
    4242#include <QtGui/QTabWidget>
     43#include <Qt/qsettings.h>
    4344#include <Qt/qsplitter.h>
    4445#include <Qt/qboxlayout.h>
     
    7475    potentialregistry_enabled(false)
    7576{
    76   QVBoxLayout* layout = new QVBoxLayout(this);
     77  QHBoxLayout* layout = new QHBoxLayout(this);
    7778  QSplitter *splitter = new QSplitter (Qt::Horizontal, this );
    7879  layout->addWidget(splitter);
     
    8283  treewidget->setSelectionMode( QTreeWidget::SingleSelection );
    8384  treewidget->setColumnCount(COLUMNCOUNT);
     85  //treewidget->setSizePolicy( QSizePolicy::Minimum, sizePolicy().verticalPolicy() );
    8486  QStringList header;
    8587  for(int i=0; i<COLUMNCOUNT;++i)
     
    9193#ifdef HAVE_QWT
    9294  widget = new QSeisPlotPage ("energy", splitter);
     95  //widget->setSizePolicy( QSizePolicy::MinimumExpanding, sizePolicy().verticalPolicy() );
    9396  QSeisPageRegistry::getInstance().registerInstance(widget);
    9497#else
     
    97100  splitter->addWidget(widget);
    98101
    99         dirty = true;
     102  dirty = true;
    100103  clearing = false;
     104 
     105  QSettings settings;
     106  settings.beginGroup("QtHomologyList");
     107  treewidget->resize(settings.value("treewidget_size", QSize(width()/2, 20)).toSize());
     108  widget->resize(settings.value("plotwidget_size", QSize(width()/2, 20)).toSize());
     109  settings.endGroup();
    101110
    102111  refill();
     
    120129QtHomologyList::~QtHomologyList()
    121130{
     131  QSettings settings;
     132  settings.beginGroup("QtHomologyList");
     133  settings.setValue("treewidget_size", treewidget->size());
     134  settings.setValue("plotwidget_size", widget->size());
     135  settings.endGroup();
     136
     137
    122138  HomologyContainer &homologies = World::getInstance().getHomologies();
    123139  homologies.signOff(this);
Note: See TracChangeset for help on using the changeset viewer.