Subversion Repositories Scribus

Rev

Rev 1694 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1694 cbradney 1
/****************************************************************************
2
** ui.h extension file, included from the uic-generated form implementation.
3
**
4
** If you want to add, delete, or rename functions or slots, use
5
** Qt Designer to update this file, preserving your code.
6
**
7
** You should not define a constructor or destructor in this file.
8
** Instead, write your code in functions called init() and destroy().
9
** These will automatically be called by the form's constructor and
10
** destructor.
11
*****************************************************************************/
12
 
13
 
14
void TOCIndexPrefs::init()
15
{
16
        trNone=QT_TR_NOOP("None");
17
        none="None";
18
}
19
 
20
 
21
void TOCIndexPrefs::destroy()
22
{
23
 
24
}
25
 
1701 cbradney 26
void TOCIndexPrefs::setup( ToCSetupVector* tocsetups, ScribusDoc *doc)
1694 cbradney 27
{
1701 cbradney 28
        localToCSetupVector=* tocsetups;
1694 cbradney 29
        currDoc=doc;
30
        generatePageItemList();
31
        bool enabled=(localToCSetupVector.count()>0);
32
        if (enabled)
33
        {
34
                updateToCListBox();
35
                tocListBox->setCurrentItem(0);
36
                selectToC(0);
37
        }
38
        else
39
                tocListBox->clear();
40
        enableGUIWidgets();
41
}
42
 
43
void TOCIndexPrefs::generatePageItemList()
44
{
45
        itemDestFrameComboBox->clear();
46
        itemDestFrameComboBox->insertItem(trNone);
1701 cbradney 47
        if (currDoc!=NULL)
1694 cbradney 48
        {
1701 cbradney 49
                for (uint d = 0; d < currDoc->DocItems.count(); ++d)
50
                {
51
                        if (currDoc->DocItems.at(d)->itemType()==PageItem::TextFrame)
52
                                itemDestFrameComboBox->insertItem(currDoc->DocItems.at(d)->itemName());
53
                }
1694 cbradney 54
        }
1701 cbradney 55
        else
56
                itemDestFrameComboBox->setEnabled(false);
1694 cbradney 57
}
58
 
59
 
60
void TOCIndexPrefs::setupItemAttrs( QStringList newNames )
61
{
62
        itemAttrComboBox->clear();
63
        itemAttrComboBox->insertItem(trNone);
64
        itemAttrComboBox->insertStringList(newNames);  
65
        selectToC(0);
66
}
67
 
68
 
69
void TOCIndexPrefs::selectToC( int numberSelected )
70
{
1701 cbradney 71
        uint num=numberSelected;
1694 cbradney 72
        if (localToCSetupVector.isEmpty())
73
                return;
74
        if (localToCSetupVector.count()<num)
75
                num=0;
76
        if (localToCSetupVector[num].itemAttrName==none)
77
                itemAttrComboBox->setCurrentText(trNone);
78
        else
79
                itemAttrComboBox->setCurrentText(localToCSetupVector[num].itemAttrName);
80
        if (localToCSetupVector[num].frameName==none)
81
                itemDestFrameComboBox->setCurrentText(trNone);
82
        else
83
                itemDestFrameComboBox->setCurrentText(localToCSetupVector[num].frameName);
84
        if (localToCSetupVector[num].style==none)
85
                itemStyleComboBox->setCurrentText(trNone);
86
        else
87
                itemStyleComboBox->setCurrentText(localToCSetupVector[num].style);
88
}
89
 
90
 
91
void TOCIndexPrefs::addToC()
92
{
93
        ToCSetup newToCEntry;
94
        newToCEntry.name=QString("New Table of Contents %1").arg(localToCSetupVector.count()+1);
95
        newToCEntry.itemAttrName=none;
96
        newToCEntry.frameName=none;
97
        newToCEntry.style=none;
98
        localToCSetupVector.append(newToCEntry);
99
        updateToCListBox();
100
        tocListBox->setCurrentItem(localToCSetupVector.count()-1);
101
        selectToC(localToCSetupVector.count()-1);
102
        enableGUIWidgets();
103
}
104
 
105
 
106
void TOCIndexPrefs::updateToCListBox()
107
{
108
        tocListBox->clear();
109
        for(ToCSetupVector::Iterator it = localToCSetupVector.begin(); it!= localToCSetupVector.end(); ++it)
110
        {
111
                tocListBox->insertItem((*it).name);
112
        }
113
}
114
 
115
 
116
void TOCIndexPrefs::enableGUIWidgets()
117
{
118
        bool enabled=(localToCSetupVector.count()>0);
119
        tocListBox->setEnabled(enabled);
120
        tocDeleteButton->setEnabled(enabled);
121
        itemAttrComboBox->setEnabled(enabled);
122
        itemDestFrameComboBox->setEnabled(enabled);
123
        itemStyleComboBox->setEnabled(enabled);
124
}
125
 
126
 
127
void TOCIndexPrefs::deleteToC()
128
{
129
        int numberSelected=tocListBox->currentItem();
130
        if (numberSelected>=0)
131
        {
132
                int i=0;
133
                ToCSetupVector::Iterator it;
134
                for(it = localToCSetupVector.begin(); it!= localToCSetupVector.end(), i<numberSelected ; ++it, ++i)
135
                        ;
136
                localToCSetupVector.erase(it);
137
                updateToCListBox();
138
                enableGUIWidgets();
139
        }
140
}
141
 
142
 
143
void TOCIndexPrefs::itemAttributeSelected( const QString& itemAttributeName )
144
{
145
        int numberSelected=tocListBox->currentItem();
146
        if (numberSelected>=0)
147
        {
148
                int i=0;
149
                ToCSetupVector::Iterator it;
150
                for(it = localToCSetupVector.begin(); it!= localToCSetupVector.end(), i<numberSelected ; ++it, ++i)
151
                        ;
152
                if (itemAttributeName==trNone)
153
                        (*it).itemAttrName=none;
154
                else
155
                        (*it).itemAttrName=itemAttributeName;
156
        }
157
}
158
 
159
 
160
void TOCIndexPrefs::itemFrameSelected( const QString& frameName )
161
{
162
        int numberSelected=tocListBox->currentItem();
163
        if (numberSelected>=0)
164
        {
165
                int i=0;
166
                ToCSetupVector::Iterator it;
167
                for(it = localToCSetupVector.begin(); it!= localToCSetupVector.end(), i<numberSelected ; ++it, ++i)
168
                        ;
169
                if (frameName==trNone)
170
                        (*it).frameName=none;
171
                else
172
                        (*it).frameName=frameName;
173
        }
174
 
175
}
176
 
177
 
178
void TOCIndexPrefs::itemStyleSelected( const QString& itemStyle )
179
{
180
        int numberSelected=tocListBox->currentItem();
181
        if (numberSelected>=0)
182
        {
183
                int i=0;
184
                ToCSetupVector::Iterator it;
185
                for(it = localToCSetupVector.begin(); it!= localToCSetupVector.end(), i<numberSelected ; ++it, ++i)
186
                        ;
187
                if (itemStyle==trNone)
188
                        (*it).style=none;
189
                else
190
                        (*it).style=itemStyle;
191
        }
192
 
193
}
194
 
195
 
196
ToCSetupVector* TOCIndexPrefs::getNewToCs()
197
{
198
        return &localToCSetupVector;
199
}