this, SLOT(browsePressed()));
connect(deletePB, SIGNAL(clicked()),
this, SLOT(deletePressed()));
+ connect(upPB, SIGNAL(clicked()),
+ this, SLOT(upPressed()));
+ connect(downPB, SIGNAL(clicked()),
+ this, SLOT(downPressed()));
connect(styleCB, SIGNAL(editTextChanged(QString)),
this, SLOT(change_adaptor()));
connect(databaseLW, SIGNAL(itemSelectionChanged()),
bc().addReadOnly(bibtocCB);
bc().addReadOnly(addBibPB);
bc().addReadOnly(deletePB);
+
+ // Make sure the delete/up/down buttons are disabled if necessary.
+ databaseChanged();
}
void GuiBibtex::deletePressed()
{
- databaseLW->takeItem(databaseLW->currentRow());
+ QListWidgetItem *cur = databaseLW->takeItem(databaseLW->currentRow());
+ if (cur) {
+ delete cur;
+ changed();
+ }
+}
+
+
+void GuiBibtex::upPressed()
+{
+ int row = databaseLW->currentRow();
+ QListWidgetItem *cur;
+ databaseLW->insertItem(row - 1, cur = databaseLW->takeItem(row));
+ databaseLW->setCurrentItem(cur);
changed();
}
+void GuiBibtex::downPressed()
+{
+ int row = databaseLW->currentRow();
+ QListWidgetItem *cur;
+ databaseLW->insertItem(row + 1, cur = databaseLW->takeItem(row));
+ databaseLW->setCurrentItem(cur);
+ changed();
+}
+
void GuiBibtex::databaseChanged()
{
deletePB->setEnabled(!isBufferReadonly() && databaseLW->currentRow() != -1);
+ upPB->setEnabled(!isBufferReadonly() && databaseLW->count() > 1 && databaseLW->currentRow() > 0);
+ downPB->setEnabled(!isBufferReadonly() && databaseLW->count() > 1 && databaseLW->currentRow() < databaseLW->count() - 1);
}
<property name="spacing" >
<number>6</number>
</property>
- <item rowspan="3" row="1" column="0" colspan="2" >
+ <item rowspan="5" row="1" column="0" colspan="2" >
<widget class="QListWidget" name="databaseLW" />
</item>
- <item row="7" column="0" colspan="2" >
+ <item row="9" column="0" colspan="2" >
<widget class="QCheckBox" name="bibtocCB" >
<property name="toolTip" >
<string>Add bibliography to the table of contents</string>
</property>
</widget>
</item>
- <item row="6" column="0" >
+ <item row="8" column="0" >
<widget class="QLabel" name="btPrintLA" >
<property name="sizePolicy" >
<sizepolicy>
</property>
</widget>
</item>
- <item row="6" column="1" >
+ <item row="8" column="1" >
<widget class="QComboBox" name="btPrintCO" >
<property name="toolTip" >
<string>This bibliography section contains...</string>
</item>
</widget>
</item>
- <item rowspan="2" row="6" column="2" >
+ <item rowspan="2" row="8" column="2" >
<spacer>
<property name="orientation" >
<enum>Qt::Vertical</enum>
</property>
</spacer>
</item>
- <item row="5" column="2" >
+ <item row="7" column="2" >
<widget class="QPushButton" name="stylePB" >
<property name="toolTip" >
<string>Choose a style file</string>
</property>
</widget>
</item>
- <item row="5" column="0" colspan="2" >
+ <item row="7" column="0" colspan="2" >
<widget class="QComboBox" name="styleCB" >
<property name="toolTip" >
<string>Choose a style file</string>
</property>
</widget>
</item>
- <item rowspan="2" row="3" column="2" >
+ <item rowspan="2" row="5" column="2" >
<spacer>
<property name="orientation" >
<enum>Qt::Vertical</enum>
</property>
</widget>
</item>
- <item row="8" column="0" colspan="3" >
+ <item row="10" column="0" colspan="3" >
<layout class="QHBoxLayout" >
<property name="margin" >
<number>0</number>
</item>
</layout>
</item>
- <item row="4" column="0" colspan="2" >
+ <item row="6" column="0" colspan="2" >
<widget class="QLabel" name="styleLA" >
<property name="sizePolicy" >
<sizepolicy>
</property>
</widget>
</item>
+ <item row="3" column="2" >
+ <widget class="QPushButton" name="upPB" >
+ <property name="toolTip" >
+ <string>Move the selected database upwards in the list</string>
+ </property>
+ <property name="text" >
+ <string>&Up</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="2" >
+ <widget class="QPushButton" name="downPB" >
+ <property name="toolTip" >
+ <string>Move the selected database downwards in the list</string>
+ </property>
+ <property name="text" >
+ <string>Do&wn</string>
+ </property>
+ </widget>
+ </item>
</layout>
</widget>
<pixmapfunction></pixmapfunction>