Mercurial > hg > octave-lyh
view libgui/src/history-dock-widget.h @ 16512:7f2395651a1c
dialog boxes with Qt widgets
* dialog.h, dialog.cc: New files.
* libgui/src/module.mk: Update file lists.
* main-window.h, main-window.ccmain_window::connect_uiwidget_links,
main_window::handle_create_dialog,
main_window::handle_create_listview,
main_window::handle_create_inputlayout): New functions.
(main_window::construct): Call connect_uiwidget_links.
* octave-link.h, octave-link.cc (octave_link::message_dialog,
octave_link::do_message_dialog, octave_link::list_dialog,
octave_link::do_list_dialog, octave_link::input_dialog,
octave_link::do_input_dialog): New functions.
* octave-qt-link.h, octave-qt-link.cc (octave_qt_link::message_dialog,
octave_qt_link::do_message_dialog, octave_qt_link::list_dialog,
octave_qt_link::do_list_dialog, octave_qt_link::input_dialog,
octave_qt_link::do_input_dialog, make_qstring_list): New functions.
* octave-link.cc (F__octave_link_edit_file__): Call
flush_octave_stdout before running the edit file action.
(F__octave_link_message_dialog__, F__octave_link_list_dialog__,
__octave_link_input_dialog__): New functions.
* errordlg.m, helpdlg.m, inputdlg.m, listdlg.m, msgbox.m, warndlg.m:
New demos adapted from dlgtest.m
* dlgtest.m: Delete.
* scripts/java/module.mk: Remove it from the list of files.
* inputdlg.m: Try __octave_link_input_dialog__ first. Only try java
method if JAVA feature is available.
* listdlg.m: Likwise, for __octave_link_list_dialog__.
* private/message_dialog.m: Likewise, for
__octave_link_message_dialog__.
author | Daniel J Sebald <daniel.sebald@ieee.org>, John W. Eaton <jwe@octave.org> |
---|---|
date | Sat, 13 Apr 2013 15:22:34 -0400 |
parents | 094bd3627ead |
children | 944ade6e7f66 |
line wrap: on
line source
/* Copyright (C) 2011-2012 Jacob Dawid This file is part of Octave. Octave is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. Octave is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Octave; see the file COPYING. If not, see <http://www.gnu.org/licenses/>. */ #ifndef HISTORYDOCKWIDGET_H #define HISTORYDOCKWIDGET_H #include <QLineEdit> #include <QListView> #include <QSortFilterProxyModel> #include <QStringListModel> #include "octave-dock-widget.h" class history_dock_widget : public octave_dock_widget { Q_OBJECT public: history_dock_widget (QWidget *parent = 0); public slots: void set_history (const QStringList& hist); void append_history (const QString& hist_entry); void clear_history (void); signals: void information (const QString& message); /** Emitted, whenever the user double-clicked a command in the history. */ void command_double_clicked (const QString& command); /** Emitted whenever the user selects command and chooses Create script from popupmenu. */ void command_create_script (const QString& commands); private slots: void handle_double_click (QModelIndex modelIndex); void handle_contextmenu_copy(bool flag); void handle_contextmenu_evaluate(bool flag); void handle_contextmenu_create_script(bool flag); void ctxMenu(const QPoint &pos); private: void construct (); QListView *_history_list_view; QLineEdit *_filter_line_edit; QSortFilterProxyModel _sort_filter_proxy_model; /** Stores the current history_model. */ QStringListModel *_history_model; }; #endif // HISTORYDOCKWIDGET_H