summaryrefslogtreecommitdiffstats
path: root/languages/cpp/cppsplitheadersourceconfig.cpp
blob: 6825336818fef8a802f618d3a529c67f4eab0a13 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
/*
 * KDevelop config for split header/source
 *
 * Copyright (c) 2005 Adam Treat <treat@kde.org>
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Library General Public License as
 * published by the Free Software Foundation; either version 2 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, write to the
 * Free Software Foundation, Inc.,
 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 */

#include "cppsplitheadersourceconfig.h"
#include "cppsupportpart.h"

#include <domutil.h>

#include <kdebug.h>
#include <qdom.h>

QString CppSplitHeaderSourceConfig::defaultPath = QString::fromLatin1( "/kdevcppsupport/splitheadersource" );

CppSplitHeaderSourceConfig::CppSplitHeaderSourceConfig( CppSupportPart * part, QDomDocument* dom )
        : QObject( part ), m_part( part ), m_dom( dom )
{
    init();
}

CppSplitHeaderSourceConfig::~CppSplitHeaderSourceConfig()
{}

void CppSplitHeaderSourceConfig::init( )
{
    m_splitEnable =
        DomUtil::readBoolEntry( *m_dom, defaultPath + "/enabled", false );
    m_splitSync =
        DomUtil::readBoolEntry( *m_dom, defaultPath + "/synchronize", true );
    m_splitOrientation =
        DomUtil::readEntry( *m_dom, defaultPath + "/orientation", "Vertical" );
}

void CppSplitHeaderSourceConfig::store( )
{
    DomUtil::writeBoolEntry( *m_dom,
                             defaultPath + "/enabled",
                             m_splitEnable );
    DomUtil::writeBoolEntry( *m_dom,
                             defaultPath + "/synchronize",
                             m_splitSync );
    DomUtil::writeEntry( *m_dom,
                         defaultPath + "/orientation",
                         m_splitOrientation );

    emit stored();
}

void CppSplitHeaderSourceConfig::setSplitEnable( bool b )
{
    m_splitEnable = b;
}

void CppSplitHeaderSourceConfig::setAutoSync( bool b )
{
    m_splitSync = b;
}

void CppSplitHeaderSourceConfig::setOrientation( const QString &o )
{
    m_splitOrientation = o;
}

#include "cppsplitheadersourceconfig.moc" 
// kate: indent-mode csands; tab-width 4;