diff libgui/src/history-dock-widget.cc @ 24011:9107bae20480

style fixes for some GUI source files * color-picker.cc, color-picker.h, documentation-dock-widget.cc, documentation-dock-widget.h, external-editor-interface.cc, external-editor-interface.h, find-files-dialog.cc, find-files-dialog.h, find-files-model.cc, find-files-model.h, history-dock-widget.cc, history-dock-widget.h, settings-dialog.cc, settings-dialog.h, terminal-dock-widget.cc, thread-manager.cc, thread-manager.h: Use m_ prefix for member variables, order functions consistently in header and source files, and follow more Octave coding conventions.
author John W. Eaton <jwe@octave.org>
date Wed, 06 Sep 2017 09:25:46 -0400
parents b481a9baeb61
children 194eb4bd202b
line wrap: on
line diff
--- a/libgui/src/history-dock-widget.cc	Tue Sep 05 17:24:13 2017 -0700
+++ b/libgui/src/history-dock-widget.cc	Wed Sep 06 09:25:46 2017 -0400
@@ -59,89 +59,33 @@
 }
 
 void
-history_dock_widget::construct ()
+history_dock_widget::set_history (const QStringList& hist)
 {
-  _history_model = new QStringListModel ();
-  _sort_filter_proxy_model.setSourceModel (_history_model);
-  _history_list_view = new QListView (this);
-  _history_list_view->setModel (&_sort_filter_proxy_model);
-  _history_list_view->setAlternatingRowColors (true);
-  _history_list_view->setEditTriggers (QAbstractItemView::NoEditTriggers);
-  _history_list_view->setStatusTip (
-    tr ("Double-click a command to transfer it to the terminal."));
-  _history_list_view->setSelectionMode (QAbstractItemView::ExtendedSelection);
-  _history_list_view->setContextMenuPolicy (Qt::CustomContextMenu);
-  connect (_history_list_view,
-           SIGNAL (customContextMenuRequested (const QPoint &)), this,
-           SLOT (ctxMenu (const QPoint &)));
+  m_history_model->setStringList (hist);
+  m_history_list_view->scrollToBottom ();
+}
 
-  _filter = new QComboBox (this);
-  _filter->setToolTip (tr ("Enter text to filter the command history"));
-  _filter->setEditable (true);
-  _filter->setMaxCount (MaxFilterHistory);
-  _filter->setInsertPolicy (QComboBox::NoInsert);
-  _filter->setSizeAdjustPolicy (
-            QComboBox::AdjustToMinimumContentsLengthWithIcon);
-  QSizePolicy sizePol (QSizePolicy::Expanding, QSizePolicy::Preferred);
-  _filter->setSizePolicy (sizePol);
-  _filter->completer ()->setCaseSensitivity (Qt::CaseSensitive);
+void
+history_dock_widget::append_history (const QString& hist_entry)
+{
+  QStringList lst = m_history_model->stringList ();
+  lst.append (hist_entry);
 
-  QLabel *filter_label = new QLabel (tr ("Filter"));
-
-  _filter_checkbox = new QCheckBox ();
-
-  setWindowIcon (QIcon (":/actions/icons/logo.png"));
-  set_title (tr ("Command History"));
-  setWidget (new QWidget ());
+  QScrollBar *scroll_bar = m_history_list_view->verticalScrollBar ();
 
-  _filter_widget = new QWidget (this);
-  QHBoxLayout *filter_layout = new QHBoxLayout ();
-  filter_layout->addWidget (filter_label);
-  filter_layout->addWidget (_filter_checkbox);
-  filter_layout->addWidget (_filter);
-  filter_layout->setMargin(0);
-  _filter_widget->setLayout (filter_layout);
-
-  QVBoxLayout *hist_layout = new QVBoxLayout ();
-  hist_layout->addWidget (_filter_widget);
-  hist_layout->addWidget (_history_list_view);
+  bool at_bottom = scroll_bar->maximum () - scroll_bar->value () < 1;
 
-  hist_layout->setMargin (2);
-  widget ()->setLayout (hist_layout);
-
-  // Init state of the filter
-  QSettings *settings = resource_manager::get_settings ();
-
-  _filter_shown
-    = settings->value ("history_dock_widget/filter_shown",true).toBool ();
-  _filter_widget->setVisible (_filter_shown);
-
-  _filter->addItems (settings->value ("history_dock_widget/mru_list").toStringList ());
+  m_history_model->setStringList (lst);
 
-  bool filter_state
-    = settings->value ("history_dock_widget/filter_active", false).toBool ();
-  _filter_checkbox->setChecked (filter_state);
-  filter_activate (filter_state);
+  // Scroll if slider position at bottom.
+  if (at_bottom)
+    m_history_list_view->scrollToBottom ();
+}
 
-  // Connect signals and slots
-  connect (_filter, SIGNAL (editTextChanged (const QString&)),
-           &_sort_filter_proxy_model,
-           SLOT (setFilterWildcard (const QString&)));
-  connect (_filter_checkbox, SIGNAL (toggled (bool)),
-           this, SLOT (filter_activate (bool)));
-  connect (_filter->lineEdit (), SIGNAL (editingFinished ()),
-           this, SLOT (update_filter_history ()));
-
-  connect (_history_list_view, SIGNAL (doubleClicked (QModelIndex)),
-           this, SLOT (handle_double_click (QModelIndex)));
-
-  // shrink max. displayed entry size to desktop width
-  QSize screen = QDesktopWidget ().screenGeometry ().size ();
-  int w = screen.width ();
-  QFontMetrics fm = _history_list_view->fontMetrics ();
-  int h = fm.height ();
-  _history_list_view->setGridSize (QSize (w,h));
-  _history_list_view->setTextElideMode (Qt::ElideRight);
+void
+history_dock_widget::clear_history (void)
+{
+  m_history_model->setStringList (QStringList ());
 }
 
 void
@@ -153,12 +97,12 @@
     return;
 
   settings->setValue ("history_dock_widget/filter_active",
-                      _filter_checkbox->isChecked ());
-  settings->setValue ("history_dock_widget/filter_shown", _filter_shown);
+                      m_filter_checkbox->isChecked ());
+  settings->setValue ("history_dock_widget/filter_shown", m_filter_shown);
 
   QStringList mru;
-  for (int i = 0; i < _filter->count (); i++)
-    mru.append (_filter->itemText (i));
+  for (int i = 0; i < m_filter->count (); i++)
+    mru.append (m_filter->itemText (i));
   settings->setValue ("history_dock_widget/mru_list", mru);
 
   settings->sync ();
@@ -167,35 +111,36 @@
 }
 
 void
-history_dock_widget::filter_activate (bool state)
+history_dock_widget::update_filter_history (void)
 {
-  _filter->setEnabled (state);
-  _sort_filter_proxy_model.setDynamicSortFilter (state);
+  QString text = m_filter->currentText ();   // get current text
+  int index = m_filter->findText (text);     // and its actual index
 
-  if (state)
-    _sort_filter_proxy_model.setFilterWildcard (_filter->currentText ());
-  else
-    _sort_filter_proxy_model.setFilterWildcard (QString ());
+  if (index > -1)
+    m_filter->removeItem (index);    // remove if already existing
+
+  m_filter->insertItem (0, text);    // (re)insert at beginning
+  m_filter->setCurrentIndex (0);
 }
 
 void
-history_dock_widget::update_filter_history ()
+history_dock_widget::filter_activate (bool state)
 {
-  QString text = _filter->currentText ();   // get current text
-  int index = _filter->findText (text);     // and its actual index
+  m_filter->setEnabled (state);
+  m_sort_filter_proxy_model.setDynamicSortFilter (state);
 
-  if (index > -1)
-    _filter->removeItem (index);    // remove if already existing
-
-  _filter->insertItem (0, text);    // (re)insert at beginning
-  _filter->setCurrentIndex (0);
+  if (state)
+    m_sort_filter_proxy_model.setFilterWildcard (m_filter->currentText ());
+  else
+    m_sort_filter_proxy_model.setFilterWildcard (QString ());
 }
 
-void history_dock_widget::ctxMenu (const QPoint& xpos)
+void
+history_dock_widget::ctxMenu (const QPoint& xpos)
 {
   QMenu menu (this);
 
-  QModelIndex index = _history_list_view->indexAt (xpos);
+  QModelIndex index = m_history_list_view->indexAt (xpos);
 
   if (index.isValid () && index.column () == 0)
     {
@@ -207,20 +152,27 @@
                       tr ("Create script"), this,
                       SLOT (handle_contextmenu_create_script (bool)));
     }
-  if (_filter_shown)
+  if (m_filter_shown)
     menu.addAction (tr ("Hide filter"), this,
                     SLOT (handle_contextmenu_filter ()));
   else
     menu.addAction (tr ("Show filter"), this,
                     SLOT (handle_contextmenu_filter ()));
 
-  menu.exec (_history_list_view->mapToGlobal (xpos));
+  menu.exec (m_history_list_view->mapToGlobal (xpos));
 }
 
-void history_dock_widget::handle_contextmenu_copy (bool)
+void
+history_dock_widget::handle_double_click (QModelIndex modelIndex)
+{
+  emit command_double_clicked (modelIndex.data ().toString ());
+}
+
+void
+history_dock_widget::handle_contextmenu_copy (bool)
 {
   QString text;
-  QItemSelectionModel *selectionModel = _history_list_view->selectionModel ();
+  QItemSelectionModel *selectionModel = m_history_list_view->selectionModel ();
   QModelIndexList rows = selectionModel->selectedRows ();
   QModelIndexList::iterator it;
   bool prev_valid_row = false;
@@ -239,7 +191,7 @@
 
 void history_dock_widget::handle_contextmenu_evaluate (bool)
 {
-  QItemSelectionModel *selectionModel = _history_list_view->selectionModel ();
+  QItemSelectionModel *selectionModel = m_history_list_view->selectionModel ();
   QModelIndexList rows = selectionModel->selectedRows ();
   QModelIndexList::iterator it;
   for (it = rows.begin () ; it != rows.end (); it++)
@@ -253,7 +205,7 @@
 history_dock_widget::handle_contextmenu_create_script (bool)
 {
   QString text;
-  QItemSelectionModel *selectionModel = _history_list_view->selectionModel ();
+  QItemSelectionModel *selectionModel = m_history_list_view->selectionModel ();
   QModelIndexList rows = selectionModel->selectedRows ();
 
   bool prev_valid_row = false;
@@ -275,91 +227,139 @@
 void
 history_dock_widget::handle_contextmenu_filter (void)
 {
-  _filter_shown = not _filter_shown;
-  _filter_widget->setVisible (_filter_shown);
-}
-
-void
-history_dock_widget::handle_double_click (QModelIndex modelIndex)
-{
-  emit command_double_clicked (modelIndex.data ().toString ());
-}
-
-void
-history_dock_widget::set_history (const QStringList& hist)
-{
-  _history_model->setStringList (hist);
-  _history_list_view->scrollToBottom ();
+  m_filter_shown = ! m_filter_shown;
+  m_filter_widget->setVisible (m_filter_shown);
 }
 
 void
-history_dock_widget::append_history (const QString& hist_entry)
+history_dock_widget::copyClipboard (void)
 {
-  QStringList lst = _history_model->stringList ();
-  lst.append (hist_entry);
-
-  QScrollBar *scroll_bar = _history_list_view->verticalScrollBar ();
-
-  bool at_bottom = scroll_bar->maximum () - scroll_bar->value () < 1;
-
-  _history_model->setStringList (lst);
-
-  // Scroll if slider position at bottom.
-  if (at_bottom)
-    _history_list_view->scrollToBottom ();
-}
-
-void
-history_dock_widget::clear_history (void)
-{
-  _history_model->setStringList (QStringList ());
-}
-
-void
-history_dock_widget::copyClipboard ()
-{
-  if (_history_list_view->hasFocus ())
+  if (m_history_list_view->hasFocus ())
     handle_contextmenu_copy (true);
-  if (_filter->lineEdit ()->hasFocus ()
-      && _filter->lineEdit ()->hasSelectedText ())
+  if (m_filter->lineEdit ()->hasFocus ()
+      && m_filter->lineEdit ()->hasSelectedText ())
     {
       QClipboard *clipboard = QApplication::clipboard ();
-      clipboard->setText (_filter->lineEdit ()->selectedText ());
+      clipboard->setText (m_filter->lineEdit ()->selectedText ());
     }
 }
 
 void
-history_dock_widget::pasteClipboard ()
+history_dock_widget::pasteClipboard (void)
 {
-  if (_filter->lineEdit ()->hasFocus ())
+  if (m_filter->lineEdit ()->hasFocus ())
     {
       QClipboard *clipboard = QApplication::clipboard ();
       QString str = clipboard->text ();
       if (str.length () > 0)
-        _filter->lineEdit ()->insert (str);
+        m_filter->lineEdit ()->insert (str);
     }
 }
 
 void
-history_dock_widget::selectAll ()
+history_dock_widget::selectAll (void)
 {
-  if (_filter->lineEdit ()->hasFocus ())
-    {
-      _filter->lineEdit ()->selectAll ();
-    }
-  if (_history_list_view->hasFocus ())
-    {
-      _history_list_view->selectAll ();
-    }
+  if (m_filter->lineEdit ()->hasFocus ())
+    m_filter->lineEdit ()->selectAll ();
+
+  if (m_history_list_view->hasFocus ())
+    m_history_list_view->selectAll ();
 }
 
-void history_dock_widget::handle_visibility (bool visible)
+void
+history_dock_widget::handle_visibility (bool visible)
 {
   octave_dock_widget::handle_visibility (visible);
 
   if (visible)
     {
-      int filter_state = _filter_checkbox->isChecked ();
+      int filter_state = m_filter_checkbox->isChecked ();
       filter_activate (filter_state);
     }
 }
+
+void
+history_dock_widget::construct (void)
+{
+  m_history_model = new QStringListModel ();
+  m_sort_filter_proxy_model.setSourceModel (m_history_model);
+  m_history_list_view = new QListView (this);
+  m_history_list_view->setModel (&m_sort_filter_proxy_model);
+  m_history_list_view->setAlternatingRowColors (true);
+  m_history_list_view->setEditTriggers (QAbstractItemView::NoEditTriggers);
+  m_history_list_view->setStatusTip (
+    tr ("Double-click a command to transfer it to the terminal."));
+  m_history_list_view->setSelectionMode (QAbstractItemView::ExtendedSelection);
+  m_history_list_view->setContextMenuPolicy (Qt::CustomContextMenu);
+  connect (m_history_list_view,
+           SIGNAL (customContextMenuRequested (const QPoint &)), this,
+           SLOT (ctxMenu (const QPoint &)));
+
+  m_filter = new QComboBox (this);
+  m_filter->setToolTip (tr ("Enter text to filter the command history"));
+  m_filter->setEditable (true);
+  m_filter->setMaxCount (MaxFilterHistory);
+  m_filter->setInsertPolicy (QComboBox::NoInsert);
+  m_filter->setSizeAdjustPolicy (
+            QComboBox::AdjustToMinimumContentsLengthWithIcon);
+  QSizePolicy sizePol (QSizePolicy::Expanding, QSizePolicy::Preferred);
+  m_filter->setSizePolicy (sizePol);
+  m_filter->completer ()->setCaseSensitivity (Qt::CaseSensitive);
+
+  QLabel *filter_label = new QLabel (tr ("Filter"));
+
+  m_filter_checkbox = new QCheckBox ();
+
+  setWindowIcon (QIcon (":/actions/icons/logo.png"));
+  set_title (tr ("Command History"));
+  setWidget (new QWidget ());
+
+  m_filter_widget = new QWidget (this);
+  QHBoxLayout *filter_layout = new QHBoxLayout ();
+  filter_layout->addWidget (filter_label);
+  filter_layout->addWidget (m_filter_checkbox);
+  filter_layout->addWidget (m_filter);
+  filter_layout->setMargin(0);
+  m_filter_widget->setLayout (filter_layout);
+
+  QVBoxLayout *hist_layout = new QVBoxLayout ();
+  hist_layout->addWidget (m_filter_widget);
+  hist_layout->addWidget (m_history_list_view);
+
+  hist_layout->setMargin (2);
+  widget ()->setLayout (hist_layout);
+
+  // Init state of the filter
+  QSettings *settings = resource_manager::get_settings ();
+
+  m_filter_shown
+    = settings->value ("history_dock_widget/filter_shown",true).toBool ();
+  m_filter_widget->setVisible (m_filter_shown);
+
+  m_filter->addItems (settings->value ("history_dock_widget/mru_list").toStringList ());
+
+  bool filter_state
+    = settings->value ("history_dock_widget/filter_active", false).toBool ();
+  m_filter_checkbox->setChecked (filter_state);
+  filter_activate (filter_state);
+
+  // Connect signals and slots
+  connect (m_filter, SIGNAL (editTextChanged (const QString&)),
+           &m_sort_filter_proxy_model,
+           SLOT (setFilterWildcard (const QString&)));
+  connect (m_filter_checkbox, SIGNAL (toggled (bool)),
+           this, SLOT (filter_activate (bool)));
+  connect (m_filter->lineEdit (), SIGNAL (editingFinished (void)),
+           this, SLOT (updatem_filter_history (void)));
+
+  connect (m_history_list_view, SIGNAL (doubleClicked (QModelIndex)),
+           this, SLOT (handle_double_click (QModelIndex)));
+
+  // shrink max. displayed entry size to desktop width
+  QSize screen = QDesktopWidget ().screenGeometry ().size ();
+  int w = screen.width ();
+  QFontMetrics fm = m_history_list_view->fontMetrics ();
+  int h = fm.height ();
+  m_history_list_view->setGridSize (QSize (w,h));
+  m_history_list_view->setTextElideMode (Qt::ElideRight);
+}