kwave  18.07.70
Kwave::MemoryDialog Class Reference

#include <MemoryDialog.h>

Inheritance diagram for Kwave::MemoryDialog:
Inheritance graph
Collaboration diagram for Kwave::MemoryDialog:
Collaboration graph

Public Member Functions

 MemoryDialog (QWidget *parent, bool physical_limited, unsigned int physical_limit, bool virtual_enabled, bool virtual_limited, unsigned int virtual_limit, const QString &virtual_dir, unsigned int undo_limit)
 
bool isOK ()
 
virtual ~MemoryDialog ()
 
void params (QStringList &par)
 

Protected Slots

void virtualMemoryEnabled (bool enable)
 
void searchSwapDir ()
 
void invokeHelp ()
 

Detailed Description

Definition at line 30 of file MemoryDialog.h.

Constructor & Destructor Documentation

◆ MemoryDialog()

Kwave::MemoryDialog::MemoryDialog ( QWidget *  parent,
bool  physical_limited,
unsigned int  physical_limit,
bool  virtual_enabled,
bool  virtual_limited,
unsigned int  virtual_limit,
const QString &  virtual_dir,
unsigned int  undo_limit 
)

Constructor.

Parameters
parentthe dialog's parent widget
physical_limiteddetermines if the physical memory is limited
physical_limitlimit of physical memory [megabytes], 0=no limit
virtual_enabledtrue if virtual memory is enabled
virtual_limiteddetermines if the virtual memory is limited
virtual_limitlimit of virtual memory [megabytes], 0=disabled, UINT_MAX = no limit
virtual_dirdirectory for virtual memory files
undo_limitlimit of memory for undo/redo [megabytes]

Definition at line 48 of file MemoryDialog.cpp.

References Kwave::connect(), Kwave::MemoryManager::instance(), invokeHelp(), isOK(), searchSwapDir(), Kwave::toInt(), Kwave::MemoryManager::totalPhysical(), Kwave::toUint(), and virtualMemoryEnabled().

52  :QDialog(parent), Ui::MemDlg()
53 {
54  setupUi(this);
55  setModal(true);
56 
58  int total_physical = Kwave::toInt(qMin(
59  mem.totalPhysical(), static_cast<quint64>(INT_MAX)));
60 
61  if (!isOK()) return;
62 
63  physical_limit = qMin(physical_limit, Kwave::toUint(total_physical));
64 
65  // connect the controls
66  connect(chkEnableVirtual, SIGNAL(toggled(bool)),
67  this, SLOT(virtualMemoryEnabled(bool)));
68  connect(btSearch, SIGNAL(clicked()),
69  this, SLOT(searchSwapDir()));
70  connect(buttonBox->button(QDialogButtonBox::Help), SIGNAL(clicked()),
71  this, SLOT(invokeHelp()));
72 
73  // initialize all controls
74  chkLimitPhysical->setChecked(physical_limited);
75  slPhysical->setMaximum(total_physical);
76  sbPhysical->setMaximum(total_physical);
77  slPhysical->setValue(physical_limit);
78  sbPhysical->setValue(physical_limit);
79  chkEnableVirtual->setChecked(virtual_enabled);
80  chkLimitVirtual->setChecked(virtual_limited);
81  sbVirtual->setValue(virtual_limit);
82  edDirectory->setText(virtual_dir);
83  slUndo->setMaximum(total_physical / 2);
84  sbUndo->setMaximum(slUndo->maximum());
85  sbUndo->setValue(undo_limit);
86 
87  virtualMemoryEnabled(virtual_enabled);
88 
89  // set fixed size
90  setFixedWidth(sizeHint().width());
91  setFixedHeight(sizeHint().height());
92 
93  // set the focus onto the "OK" button
94  buttonBox->button(QDialogButtonBox::Ok)->setFocus();
95 }
quint64 totalPhysical() Q_DECL_EXPORT
static MemoryManager & instance() Q_DECL_EXPORT
bool connect(Kwave::StreamObject &source, const char *output, Kwave::StreamObject &sink, const char *input)
Definition: Connect.cpp:48
void virtualMemoryEnabled(bool enable)
int toInt(T x)
Definition: Utils.h:127
unsigned int toUint(T x)
Definition: Utils.h:109
Here is the call graph for this function:

◆ ~MemoryDialog()

Kwave::MemoryDialog::~MemoryDialog ( )
virtual

Destructor

Definition at line 98 of file MemoryDialog.cpp.

99 {
100 }

Member Function Documentation

◆ invokeHelp

void Kwave::MemoryDialog::invokeHelp ( )
protectedslot

invoke the online help

Definition at line 161 of file MemoryDialog.cpp.

References _.

Referenced by MemoryDialog().

162 {
163  KHelpClient::invokeHelp(_("memory-setup"));
164 }
#define _(m)
Definition: memcpy.c:66
Here is the caller graph for this function:

◆ isOK()

bool Kwave::MemoryDialog::isOK ( )

Returns true if the dialog is usable (no null pointers)

Definition at line 103 of file MemoryDialog.cpp.

Referenced by MemoryDialog().

104 {
105  Q_ASSERT(chkEnableVirtual);
106  Q_ASSERT(chkLimitPhysical);
107  Q_ASSERT(chkLimitVirtual);
108  Q_ASSERT(edDirectory);
109  Q_ASSERT(sbPhysical);
110  Q_ASSERT(sbVirtual);
111  Q_ASSERT(slPhysical);
112  Q_ASSERT(slVirtual);
113 
114  return chkEnableVirtual && chkLimitPhysical && chkLimitVirtual &&
115  edDirectory && sbPhysical && sbVirtual && slPhysical &&
116  slVirtual;
117 }
Here is the caller graph for this function:

◆ params()

void Kwave::MemoryDialog::params ( QStringList &  par)

Returns all parameters as a list.

Definition at line 120 of file MemoryDialog.cpp.

Referenced by Kwave::MemoryPlugin::setup().

121 {
122  par.clear();
123  par << QString::number(chkLimitPhysical->isChecked() ? 1 : 0);
124  par << QString::number(sbPhysical->value());
125  par << QString::number(chkEnableVirtual->isChecked() ? 1 : 0);
126  par << QString::number(chkLimitVirtual->isChecked() ? 1 : 0);
127  par << QString::number(sbVirtual->value());
128  par << edDirectory->text();
129  par << QString::number(sbUndo->value());
130 }
Here is the caller graph for this function:

◆ searchSwapDir

void Kwave::MemoryDialog::searchSwapDir ( )
protectedslot

Connected to the Search button to select a new swap directory

Definition at line 147 of file MemoryDialog.cpp.

References Kwave::FileDialog::SelectDir, and Kwave::FileDialog::selectedUrl().

Referenced by MemoryDialog().

148 {
149  QPointer<Kwave::FileDialog> dlg = new (std::nothrow) Kwave::FileDialog(
150  edDirectory->text(), Kwave::FileDialog::SelectDir, QString(), this);
151  if (!dlg) return;
152  dlg->setWindowTitle(i18n("Select Swap File Directory"));
153  if (dlg->exec() == QDialog::Accepted) {
154  QString dir = dlg->selectedUrl().toLocalFile();
155  if (dir.length()) edDirectory->setText(dir);
156  }
157  delete dlg;
158 }
QUrl selectedUrl() const
Definition: FileDialog.cpp:253
Here is the call graph for this function:
Here is the caller graph for this function:

◆ virtualMemoryEnabled

void Kwave::MemoryDialog::virtualMemoryEnabled ( bool  enable)
protectedslot

Called if the virtual memory has been enabled / disabled

Definition at line 133 of file MemoryDialog.cpp.

Referenced by MemoryDialog().

134 {
135  bool limit = enable && (chkLimitVirtual->isChecked());
136 
137  chkLimitVirtual->setEnabled(enable);
138  slVirtual->setEnabled(limit);
139  sbVirtual->setEnabled(limit);
140 
141  txtDirectory->setEnabled(enable);
142  edDirectory->setEnabled(enable);
143  btSearch->setEnabled(enable);
144 }
Here is the caller graph for this function:

The documentation for this class was generated from the following files: