view gui/src/editor/FileEditorInterface.h @ 14676:35512b788af2 gui

Editor can now handle multiple files in tabs. * FileEditorInterface (new class): Interface class fpr the file editor. * FileEditorTab (new class): File editor unit for editing a single file. * MainWindow: Adjusted includes and method calls. * FileEditor: Replaced code that allowed editing a file with code that manages tabs and delegates button clicks. * src.pro: Added new files.
author Jacob Dawid <jacob.dawid@googlemail.com>
date Wed, 23 May 2012 20:25:07 +0200
parents
children 66ff321cb62e
line wrap: on
line source

/* OctaveGUI - A graphical user interface for Octave
 * Copyright (C) 2011 Jacob Dawid (jacob.dawid@googlemail.com)
 *
 * This program 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.
 *
 * This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
 */

#ifndef FILEEDITORINTERFACE_H
#define FILEEDITORINTERFACE_H

#include <QWidget>

class QTerminal;
class MainWindow;

class FileEditorInterface : public QWidget
{
  Q_OBJECT

  public:
    FileEditorInterface (QTerminal *terminal, MainWindow *mainWindow)
      : QWidget ()
    {
      m_terminal = terminal;
      m_mainWindow = mainWindow;
    }

    virtual ~FileEditorInterface () { }
  public slots:
    virtual void requestNewFile () = 0;
    virtual void requestOpenFile () = 0;
    virtual void requestOpenFile (QString fileName) = 0;

  protected:
    QTerminal* m_terminal;
    MainWindow* m_mainWindow;
};

#endif // FILEEDITORINTERFACE_H