]> git.lyx.org Git - lyx.git/blob - src/frontends/kde/formrefdialog.C
Added Ascii export for tabulars + small fixes
[lyx.git] / src / frontends / kde / formrefdialog.C
1 /*
2  * formrefdialog.C
3  * (C) 2000 LyX Team
4  * John Levon, moz@compsoc.man.ac.uk
5  */
6
7 /***************************************************************************
8  *                                                                         *
9  *   This program is free software; you can redistribute it and/or modify  *
10  *   it under the terms of the GNU General Public License as published by  *
11  *   the Free Software Foundation; either version 2 of the License, or     *
12  *   (at your option) any later version.                                   *
13  *                                                                         *
14  ***************************************************************************/
15
16 #include "formrefdialog.h"
17
18 FormRefDialog::FormRefDialog(FormRef *form, QWidget *parent, const char *name, bool, WFlags)
19         : QDialog(parent,name,false), form_(form)
20 {
21         setCaption(name);
22
23         // widgets
24
25         refs = new QListBox(this);
26         refs->setMinimumSize(200,200);
27  
28         labelrefs = new QLabel(this);
29         labelrefs->setText(_("Available References"));
30         labelrefs->setMargin(5);
31         labelrefs->setMinimumSize(labelrefs->sizeHint());
32         labelrefs->setMaximumSize(labelrefs->sizeHint());
33
34         refname = new QLineEdit(this);
35         refname->setMinimumSize(refname->sizeHint());
36         // FIXME: should user be able to edit this ? what's it for ? - jbl 
37         refname->setFocusPolicy(QWidget::NoFocus);
38  
39         reference = new QLineEdit(this); 
40         reference->setMinimumSize(reference->sizeHint());
41         reference->setFocusPolicy(QWidget::NoFocus);
42
43         labelrefname = new QLabel(this);
44         labelrefname->setText(_("Name :"));
45         labelrefname->setMargin(5);
46         labelrefname->setMinimumSize(labelrefname->sizeHint());
47         labelrefname->setMaximumSize(labelrefname->sizeHint());
48
49         labelreference = new QLabel(this);
50         labelreference->setText(_("Reference :"));
51         labelreference->setMargin(5);
52         labelreference->setMinimumSize(labelreference->sizeHint());
53         labelreference->setMaximumSize(labelreference->sizeHint());
54
55         sort = new QCheckBox(this); 
56         sort->setText(_("Sort"));
57         sort->setMinimumSize(sort->sizeHint());
58         sort->setMaximumSize(sort->sizeHint());
59  
60         type = new QComboBox(this);
61         type->insertItem(_("Reference"));
62         type->insertItem(_("Page number"));
63         type->insertItem(_("Ref on page xxx"));
64         type->insertItem(_("on page xxx"));
65         type->insertItem(_("Pretty reference"));
66         type->setMinimumSize(type->sizeHint());
67          
68         labeltype = new QLabel(this); 
69         labeltype->setText(_("Reference Type"));
70         labeltype->setMargin(5);
71         labeltype->setMinimumSize(labeltype->sizeHint());
72         labeltype->setMaximumSize(labeltype->sizeHint());
73  
74         buttonGoto = new QPushButton(this);
75         buttonGoto->setText(_("&Goto reference"));
76         buttonGoto->setMinimumSize(buttonGoto->sizeHint());
77         buttonGoto->setMaximumSize(buttonGoto->sizeHint());
78
79         buttonUpdate = new QPushButton(this);
80         buttonUpdate->setText(_("&Update"));
81         buttonUpdate->setMinimumSize(buttonUpdate->sizeHint());
82         buttonUpdate->setMaximumSize(buttonUpdate->sizeHint());
83
84         buttonOk = new QPushButton(this);
85         buttonOk->setText(_("&OK"));
86         buttonOk->setMinimumSize(buttonOk->sizeHint());
87         buttonOk->setMaximumSize(buttonOk->sizeHint());
88         buttonOk->setDefault(true);
89
90         buttonCancel = new QPushButton(this);
91         buttonCancel->setText(_("&Cancel"));
92         buttonCancel->setMinimumSize(buttonCancel->sizeHint());
93         buttonCancel->setMaximumSize(buttonCancel->sizeHint());
94
95         // tooltips
96
97         QToolTip::add(type,_("Reference as it appears in output"));
98         QToolTip::add(sort,_("Sort references in alphabetical order ?"));
99
100         // layouts
101
102         topLayout = new QHBoxLayout(this,10);
103
104         layout = new QVBoxLayout();
105         topLayout->addLayout(layout);
106         layout->addSpacing(10);
107
108         upperLayout = new QHBoxLayout();
109         layout->addLayout(upperLayout, 1);
110
111         browserLayout = new QVBoxLayout();
112         upperLayout->addLayout(browserLayout, 1);
113
114         browserLayout->addWidget(labelrefs, 0);
115         browserLayout->addWidget(refs, 1);
116
117         rightLayout = new QVBoxLayout();
118         upperLayout->addLayout(rightLayout, 1);
119
120         nameLayout = new QHBoxLayout();
121         rightLayout->addLayout(nameLayout, 0);
122
123         nameLayout->addWidget(labelrefname, 0);
124         nameLayout->addWidget(refname, 1);
125
126         rightLayout->addStretch(1);
127  
128         referenceLayout = new QHBoxLayout();
129         rightLayout->addLayout(referenceLayout, 0);
130
131         referenceLayout->addWidget(labelreference, 0);
132         referenceLayout->addWidget(reference, 1);
133  
134         rightLayout->addStretch(1);
135  
136         rightLayout->addWidget(labeltype, 0);
137         rightLayout->addWidget(type, 0);
138  
139         rightLayout->addStretch(1);
140  
141         rightLayout->addWidget(buttonGoto, 1);
142
143         rightLayout->addStretch(1);
144  
145         buttonLayout = new QHBoxLayout(); 
146         layout->addLayout(buttonLayout);
147         buttonLayout->addWidget(sort, 1);
148         buttonLayout->addStretch(1);
149         buttonLayout->addWidget(buttonUpdate, 1);
150         buttonLayout->addStretch(1);
151         buttonLayout->addWidget(buttonOk, 1);
152         buttonLayout->addStretch(2);
153         buttonLayout->addWidget(buttonCancel, 1);
154         buttonLayout->addStretch(1);
155  
156         // connections
157
158         connect(refs, SIGNAL(highlighted(const char *)), this, SLOT(highlight_adaptor(const char *))); 
159         connect(refs, SIGNAL(selected(const char *)), this, SLOT(select_adaptor(const char *)));
160         connect(sort, SIGNAL(toggled(bool)), this, SLOT(sort_adaptor(bool))); 
161         connect(buttonOk, SIGNAL(clicked()), this, SLOT(apply_adaptor()));
162         connect(buttonUpdate, SIGNAL(clicked()), this, SLOT(update_adaptor()));
163         connect(buttonGoto, SIGNAL(clicked()), this, SLOT(goto_adaptor())); 
164         connect(buttonCancel, SIGNAL(clicked()), this, SLOT(close_adaptor()));
165 }
166
167 void FormRefDialog::closeEvent(QCloseEvent *e)
168 {
169         form_->close();
170         e->accept();
171 }
172
173 FormRefDialog::~FormRefDialog()
174 {
175 }