2006-12-06 23:02:08 -06:00
|
|
|
/*
|
|
|
|
* mooeditor-private.h
|
|
|
|
*
|
2015-12-30 00:12:49 -08:00
|
|
|
* Copyright (C) 2004-2015 by Yevgen Muntyan <emuntyan@users.sourceforge.net>
|
2006-12-06 23:02:08 -06:00
|
|
|
*
|
2008-09-05 17:20:50 -05:00
|
|
|
* This file is part of medit. medit is free software; you can
|
|
|
|
* redistribute it and/or modify it under the terms of the
|
|
|
|
* GNU Lesser General Public License as published by the
|
|
|
|
* Free Software Foundation; either version 2.1 of the License,
|
|
|
|
* or (at your option) any later version.
|
2006-12-06 23:02:08 -06:00
|
|
|
*
|
2008-09-05 17:20:50 -05:00
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with medit. If not, see <http://www.gnu.org/licenses/>.
|
2006-12-06 23:02:08 -06:00
|
|
|
*/
|
|
|
|
|
2015-12-30 00:12:49 -08:00
|
|
|
#pragma once
|
2006-12-06 23:02:08 -06:00
|
|
|
|
2015-12-30 00:12:49 -08:00
|
|
|
#include <vector>
|
2010-11-23 21:54:39 -08:00
|
|
|
#include "mooedit/mooeditor-impl.h"
|
|
|
|
#include "mooedit/moolangmgr.h"
|
2016-01-31 00:03:05 -08:00
|
|
|
#include "moocpp/moocpp.h"
|
2006-12-06 23:02:08 -06:00
|
|
|
|
2015-12-30 00:12:49 -08:00
|
|
|
enum MooEditorOptions {
|
2016-01-01 22:25:53 -08:00
|
|
|
MOO_EDITOR_OPTIONS_NONE = 0,
|
2010-11-23 21:54:39 -08:00
|
|
|
OPEN_SINGLE = 1 << 0,
|
|
|
|
ALLOW_EMPTY_WINDOW = 1 << 1,
|
|
|
|
SINGLE_WINDOW = 1 << 2,
|
|
|
|
SAVE_BACKUPS = 1 << 3,
|
|
|
|
STRIP_WHITESPACE = 1 << 4,
|
|
|
|
};
|
2006-12-06 23:02:08 -06:00
|
|
|
|
2015-12-30 00:12:49 -08:00
|
|
|
MOO_DEFINE_FLAGS(MooEditorOptions);
|
2015-07-15 02:22:11 -07:00
|
|
|
|
2015-12-30 00:12:49 -08:00
|
|
|
struct MooEditorPrivate {
|
2016-01-04 09:56:33 -08:00
|
|
|
std::vector<MooEditWindow*> windows;
|
|
|
|
moo::gobj_ptr<MooUiXml> doc_ui_xml;
|
|
|
|
moo::gobj_ptr<MooUiXml> ui_xml;
|
|
|
|
moo::gobj_ptr<MooHistoryMgr> history;
|
2016-01-17 00:04:49 -08:00
|
|
|
moo::gref_ptr<MooFileWatch> file_watch;
|
2016-01-04 09:56:33 -08:00
|
|
|
MooEditorOptions opts;
|
2015-12-30 02:05:05 -08:00
|
|
|
|
2016-01-04 09:56:33 -08:00
|
|
|
GType window_type;
|
|
|
|
GType doc_type;
|
2015-12-30 02:05:05 -08:00
|
|
|
|
2016-01-04 09:56:33 -08:00
|
|
|
moo::gobj_ptr<MooLangMgr> lang_mgr;
|
2015-07-15 02:22:11 -07:00
|
|
|
|
2015-12-30 00:12:49 -08:00
|
|
|
MooEditorPrivate();
|
|
|
|
~MooEditorPrivate();
|
|
|
|
};
|