2006-05-21 18:11:05 -05:00
|
|
|
/*
|
2005-09-06 16:21:05 +00:00
|
|
|
* mooedit-private.h
|
2005-06-22 18:20:32 +00:00
|
|
|
*
|
2010-12-21 20:15:45 -08:00
|
|
|
* Copyright (C) 2004-2010 by Yevgen Muntyan <emuntyan@users.sourceforge.net>
|
2005-06-22 18:20:32 +00: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.
|
2005-06-22 18:20:32 +00: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/>.
|
2005-07-24 04:58:57 +00:00
|
|
|
*/
|
2005-06-22 18:20:32 +00:00
|
|
|
|
2016-01-03 05:13:00 -08:00
|
|
|
#pragma once
|
2005-06-22 18:20:32 +00:00
|
|
|
|
2010-02-01 22:44:03 -08:00
|
|
|
#include "mooedit/mooedit-impl.h"
|
2011-01-18 01:16:25 -08:00
|
|
|
#include "mooedit/mooeditprogress.h"
|
2016-01-03 06:13:38 -08:00
|
|
|
#include "mooedit/mooeditbookmark.h"
|
2016-01-04 03:56:42 -08:00
|
|
|
#include "mooedit/mooeditview-impl.h"
|
2016-01-31 00:03:05 -08:00
|
|
|
#include "moocpp/moocpp.h"
|
2005-06-22 18:20:32 +00:00
|
|
|
|
2010-12-12 02:29:20 -08:00
|
|
|
struct MooEditPrivate {
|
2015-12-31 16:41:12 -08:00
|
|
|
MooEditPrivate();
|
2015-12-31 04:53:46 -08:00
|
|
|
~MooEditPrivate();
|
|
|
|
|
2016-01-03 05:13:00 -08:00
|
|
|
MooEditor* editor;
|
2011-01-17 03:01:11 -08:00
|
|
|
|
2016-01-04 09:56:33 -08:00
|
|
|
moo::gobj_ptr<GtkTextBuffer> buffer;
|
|
|
|
std::vector<EditViewPtr> views;
|
|
|
|
EditViewRawPtr active_view;
|
2016-01-03 05:13:00 -08:00
|
|
|
bool dead_active_view;
|
2005-06-22 18:20:32 +00:00
|
|
|
|
2016-01-03 05:13:00 -08:00
|
|
|
gulong changed_handler_id;
|
|
|
|
gulong modified_changed_handler_id;
|
|
|
|
guint apply_config_idle;
|
|
|
|
bool in_recheck_config;
|
2005-06-22 18:20:32 +00:00
|
|
|
|
|
|
|
/***********************************************************************/
|
|
|
|
/* Document
|
2006-12-04 04:54:12 -06:00
|
|
|
*/
|
2016-01-04 09:56:33 -08:00
|
|
|
moo::gobj_ptr<GFile> file;
|
2016-01-03 05:13:00 -08:00
|
|
|
moo::gstr filename;
|
|
|
|
moo::gstr norm_name;
|
|
|
|
moo::gstr display_filename;
|
|
|
|
moo::gstr display_basename;
|
2005-06-22 18:20:32 +00:00
|
|
|
|
2016-01-03 05:13:00 -08:00
|
|
|
moo::gstr encoding;
|
|
|
|
MooLineEndType line_end_type;
|
|
|
|
MooEditStatus status;
|
2005-06-22 18:20:32 +00:00
|
|
|
|
2016-01-03 05:13:00 -08:00
|
|
|
guint file_monitor_id;
|
|
|
|
bool modified_on_disk;
|
|
|
|
bool deleted_from_disk;
|
2005-12-11 04:30:02 +00:00
|
|
|
|
2014-11-16 16:13:57 +01:00
|
|
|
// file sync event source ID
|
2016-01-03 05:13:00 -08:00
|
|
|
guint sync_timeout_id;
|
2014-11-16 16:13:57 +01:00
|
|
|
|
2016-01-03 05:13:00 -08:00
|
|
|
MooEditState state;
|
2016-01-04 09:56:33 -08:00
|
|
|
moo::gobj_ptr<MooEditProgress> progress;
|
2011-01-18 01:16:25 -08:00
|
|
|
|
2005-12-11 04:30:02 +00:00
|
|
|
/***********************************************************************/
|
|
|
|
/* Bookmarks
|
2006-12-04 04:54:12 -06:00
|
|
|
*/
|
2016-01-04 03:56:42 -08:00
|
|
|
GSList* bookmarks; /* sorted by line number */
|
2016-01-03 05:13:00 -08:00
|
|
|
guint update_bookmarks_idle;
|
|
|
|
bool enable_bookmarks;
|
2006-04-20 03:57:05 -05:00
|
|
|
|
|
|
|
/***********************************************************************/
|
|
|
|
/* Actions
|
2006-12-04 04:54:12 -06:00
|
|
|
*/
|
2016-01-04 09:56:33 -08:00
|
|
|
moo::gobj_ptr<MooActionCollection> actions;
|
2005-09-09 09:40:10 +00:00
|
|
|
};
|