1/*
2* Copyright (c) 2018 (https://github.com/phase1geo/Minder)
3*
4* This program is free software; you can redistribute it and/or
5* modify it under the terms of the GNU General Public
6* License as published by the Free Software Foundation; either
7* version 2 of the License, or (at your option) any later version.
8*
9* This program is distributed in the hope that it will be useful,
10* but WITHOUT ANY WARRANTY; without even the implied warranty of
11* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12* General Public License for more details.
13*
14* You should have received a copy of the GNU General Public
15* License along with this program; if not, write to the
16* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17* Boston, MA 02110-1301 USA
18*
19* Authored by: Trevor Williams <phase1geo@gmail.com>
20*/
21
22using Gtk;
23
24public class UndoStyleConnectionPadding : UndoStyleChange {
25
26  GenericArray<int> _values;
27
28  public UndoStyleConnectionPadding( StyleAffects affects, int padding, DrawArea da ) {
29    base( affects, da );
30    _values = new GenericArray<int>();
31    _values.add( padding );
32    load_styles( da );
33  }
34
35  protected override void load_style_value( Style style ) {
36    _values.add( style.connection_padding );
37  }
38
39  protected override void store_style_value( Style style, int index ) {
40    style.connection_padding = _values.get( index );
41  }
42
43  protected override void replace_with_item( UndoItem item ) {
44    _values.set( 0, ((UndoStyleConnectionPadding)item)._values.get( 0 ) );
45  }
46
47}
48