mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2025-12-17 20:50:34 +01:00
Remove double entry for edit element, and remove the entry : selection property
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@3739 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
@@ -1088,11 +1088,17 @@ bool DiagramView::selectedItemHasFocus() {
|
|||||||
void DiagramView::editSelection() {
|
void DiagramView::editSelection() {
|
||||||
if (scene -> isReadOnly() || scene -> selectedItems().size() != 1 ) return;
|
if (scene -> isReadOnly() || scene -> selectedItems().size() != 1 ) return;
|
||||||
|
|
||||||
if (IndependentTextItem *iti = qgraphicsitem_cast<IndependentTextItem *>(scene->selectedItems().first())) {
|
QGraphicsItem *item = scene->selectedItems().first();
|
||||||
|
|
||||||
|
//We use dynamic_cast instead of qgraphicsitem_cast for QetGraphicsItem
|
||||||
|
//because they haven't got they own type().
|
||||||
|
//Use qgraphicsitem_cast will have weird behavior for this class.
|
||||||
|
if (IndependentTextItem *iti = qgraphicsitem_cast<IndependentTextItem *>(item))
|
||||||
iti -> edit();
|
iti -> edit();
|
||||||
} else if (QetGraphicsItem *qgi = qgraphicsitem_cast<QetGraphicsItem *> (scene->selectedItems().first())) {
|
else if (QetGraphicsItem *qgi = dynamic_cast<QetGraphicsItem *> (item))
|
||||||
qgi -> editProperty();
|
qgi -> editProperty();
|
||||||
}
|
else if (Conductor *c = qgraphicsitem_cast<Conductor *>(item))
|
||||||
|
c -> editProperty();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -257,7 +257,6 @@ void QETDiagramEditor::setUpActions() {
|
|||||||
rotate_texts = m_selection_actions_group.addAction( QET::Icons::ObjectRotateRight, tr("Orienter les textes") );
|
rotate_texts = m_selection_actions_group.addAction( QET::Icons::ObjectRotateRight, tr("Orienter les textes") );
|
||||||
find_element = m_selection_actions_group.addAction( tr("Retrouver dans le panel") );
|
find_element = m_selection_actions_group.addAction( tr("Retrouver dans le panel") );
|
||||||
edit_selection = m_selection_actions_group.addAction( QET::Icons::ElementEdit, tr("\311diter l'item s\351lectionn\351") );
|
edit_selection = m_selection_actions_group.addAction( QET::Icons::ElementEdit, tr("\311diter l'item s\351lectionn\351") );
|
||||||
selection_prop = m_selection_actions_group.addAction( QET::Icons::DialogInformation, tr("Propri\351t\351s de la s\351lection") );
|
|
||||||
|
|
||||||
#ifndef Q_WS_MAC
|
#ifndef Q_WS_MAC
|
||||||
delete_selection -> setShortcut( QKeySequence( Qt::Key_Delete) );
|
delete_selection -> setShortcut( QKeySequence( Qt::Key_Delete) );
|
||||||
@@ -267,7 +266,6 @@ void QETDiagramEditor::setUpActions() {
|
|||||||
|
|
||||||
rotate_selection -> setShortcut( QKeySequence( tr("Space") ) );
|
rotate_selection -> setShortcut( QKeySequence( tr("Space") ) );
|
||||||
rotate_texts -> setShortcut( QKeySequence( tr("Ctrl+Space") ) );
|
rotate_texts -> setShortcut( QKeySequence( tr("Ctrl+Space") ) );
|
||||||
selection_prop -> setShortcut( QKeySequence( tr("Ctrl+J") ) );
|
|
||||||
conductor_reset -> setShortcut( QKeySequence( tr("Ctrl+K") ) );
|
conductor_reset -> setShortcut( QKeySequence( tr("Ctrl+K") ) );
|
||||||
infos_diagram -> setShortcut( QKeySequence( tr("Ctrl+L") ) );
|
infos_diagram -> setShortcut( QKeySequence( tr("Ctrl+L") ) );
|
||||||
edit_selection -> setShortcut( QKeySequence( tr("Ctrl+E") ) );
|
edit_selection -> setShortcut( QKeySequence( tr("Ctrl+E") ) );
|
||||||
@@ -276,14 +274,12 @@ void QETDiagramEditor::setUpActions() {
|
|||||||
rotate_selection -> setStatusTip( tr("Pivote les \351l\351ments et textes s\351lectionn\351s", "status bar tip") );
|
rotate_selection -> setStatusTip( tr("Pivote les \351l\351ments et textes s\351lectionn\351s", "status bar tip") );
|
||||||
rotate_texts -> setStatusTip( tr("Pivote les textes s\351lectionn\351s \340 un angle pr\351cis", "status bar tip") );
|
rotate_texts -> setStatusTip( tr("Pivote les textes s\351lectionn\351s \340 un angle pr\351cis", "status bar tip") );
|
||||||
find_element -> setStatusTip( tr("Retrouve l'\351l\351ment s\351lectionn\351 dans le panel", "status bar tip") );
|
find_element -> setStatusTip( tr("Retrouve l'\351l\351ment s\351lectionn\351 dans le panel", "status bar tip") );
|
||||||
selection_prop -> setStatusTip( tr("\311dite les propri\351t\351s des objets s\351lectionn\351", "status bar tip") );
|
|
||||||
|
|
||||||
connect(delete_selection, SIGNAL( triggered() ), this, SLOT( slot_delete() ) );
|
connect(delete_selection, SIGNAL( triggered() ), this, SLOT( slot_delete() ) );
|
||||||
connect(rotate_selection, SIGNAL( triggered() ), this, SLOT( slot_rotate() ) );
|
connect(rotate_selection, SIGNAL( triggered() ), this, SLOT( slot_rotate() ) );
|
||||||
connect(rotate_texts, SIGNAL( triggered() ), this, SLOT( slot_rotateTexts() ) );
|
connect(rotate_texts, SIGNAL( triggered() ), this, SLOT( slot_rotateTexts() ) );
|
||||||
connect(find_element, SIGNAL( triggered() ), this, SLOT( findSelectedElementInPanel() ) );
|
connect(find_element, SIGNAL( triggered() ), this, SLOT( findSelectedElementInPanel() ) );
|
||||||
connect(edit_selection, SIGNAL( triggered() ), this, SLOT( slot_editSelection() ) );
|
connect(edit_selection, SIGNAL( triggered() ), this, SLOT( slot_editSelection() ) );
|
||||||
connect(selection_prop, SIGNAL( triggered() ), this, SLOT( editSelectionProperties() ) );
|
|
||||||
|
|
||||||
///Select Action///
|
///Select Action///
|
||||||
QAction *select_all = m_select_actions_group.addAction( QET::Icons::EditSelectAll, tr("Tout s\351lectionner") );
|
QAction *select_all = m_select_actions_group.addAction( QET::Icons::EditSelectAll, tr("Tout s\351lectionner") );
|
||||||
@@ -453,7 +449,6 @@ void QETDiagramEditor::setUpToolBar() {
|
|||||||
main_bar -> addSeparator();
|
main_bar -> addSeparator();
|
||||||
main_bar -> addAction(delete_selection);
|
main_bar -> addAction(delete_selection);
|
||||||
main_bar -> addAction(rotate_selection);
|
main_bar -> addAction(rotate_selection);
|
||||||
main_bar -> addAction(selection_prop);
|
|
||||||
|
|
||||||
// Modes selection / visualisation et zoom
|
// Modes selection / visualisation et zoom
|
||||||
view_bar -> addAction(mode_selection);
|
view_bar -> addAction(mode_selection);
|
||||||
@@ -1213,14 +1208,15 @@ void QETDiagramEditor::slot_updateUndoStack()
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
gere les actions ayant des besoins precis pour etre active ou non
|
* @brief QETDiagramEditor::slot_updateComplexActions
|
||||||
Cette methode ne fait rien si aucun document n'est ouvert
|
* Manage the actions who need some conditions to be enable or not.
|
||||||
*/
|
* This method does nothing if there is no project opened
|
||||||
|
*/
|
||||||
void QETDiagramEditor::slot_updateComplexActions() {
|
void QETDiagramEditor::slot_updateComplexActions() {
|
||||||
DiagramView *dv = currentDiagram();
|
DiagramView *dv = currentDiagram();
|
||||||
bool editable_diagram = (dv && !dv -> diagram() -> isReadOnly());
|
bool editable_diagram = (dv && !dv -> diagram() -> isReadOnly());
|
||||||
|
|
||||||
// nombre de conducteurs selectionnes
|
//Number of selected conductors
|
||||||
int selected_conductors_count = dv ? dv -> diagram() -> selectedConductors().count() : 0;
|
int selected_conductors_count = dv ? dv -> diagram() -> selectedConductors().count() : 0;
|
||||||
conductor_reset -> setEnabled(editable_diagram && selected_conductors_count);
|
conductor_reset -> setEnabled(editable_diagram && selected_conductors_count);
|
||||||
|
|
||||||
@@ -1228,16 +1224,15 @@ void QETDiagramEditor::slot_updateComplexActions() {
|
|||||||
int selected_elements_count = dv ? dv -> diagram() -> selectedContent().count(DiagramContent::Elements) : 0;
|
int selected_elements_count = dv ? dv -> diagram() -> selectedContent().count(DiagramContent::Elements) : 0;
|
||||||
find_element -> setEnabled(selected_elements_count == 1);
|
find_element -> setEnabled(selected_elements_count == 1);
|
||||||
|
|
||||||
// actions ayant aussi besoin d'items (elements, conducteurs, textes, ...) selectionnes
|
//Action that need items (elements, conductors, texts...) selected, to be enabled
|
||||||
bool copiable_items = dv ? (dv -> hasCopiableItems()) : false;
|
bool copiable_items = dv ? (dv -> hasCopiableItems()) : false;
|
||||||
bool deletable_items = dv ? (dv -> hasDeletableItems()) : false;
|
bool deletable_items = dv ? (dv -> hasDeletableItems()) : false;
|
||||||
cut -> setEnabled(editable_diagram && copiable_items);
|
cut -> setEnabled(editable_diagram && copiable_items);
|
||||||
copy -> setEnabled(copiable_items);
|
copy -> setEnabled(copiable_items);
|
||||||
delete_selection -> setEnabled(editable_diagram && deletable_items);
|
delete_selection -> setEnabled(editable_diagram && deletable_items);
|
||||||
rotate_selection -> setEnabled(editable_diagram && dv -> diagram() -> canRotateSelection());
|
rotate_selection -> setEnabled(editable_diagram && dv -> diagram() -> canRotateSelection());
|
||||||
selection_prop -> setEnabled(deletable_items);
|
|
||||||
|
|
||||||
// actions ayant besoin de textes selectionnes
|
//Action that need selected texts
|
||||||
int selected_texts = dv ? (dv -> diagram() -> selectedTexts().count()) : 0;
|
int selected_texts = dv ? (dv -> diagram() -> selectedTexts().count()) : 0;
|
||||||
int selected_conductor_texts = dv ? (dv -> diagram() -> selectedConductorTexts().count()) : 0;
|
int selected_conductor_texts = dv ? (dv -> diagram() -> selectedConductorTexts().count()) : 0;
|
||||||
int selected_element_texts = dv ? (dv -> diagram() -> selectedElementTexts().count()) : 0;
|
int selected_element_texts = dv ? (dv -> diagram() -> selectedElementTexts().count()) : 0;
|
||||||
@@ -1247,28 +1242,43 @@ void QETDiagramEditor::slot_updateComplexActions() {
|
|||||||
int selected_image = dv ? dv -> diagram() -> selectedContent().count(DiagramContent::Images) : 0;
|
int selected_image = dv ? dv -> diagram() -> selectedContent().count(DiagramContent::Images) : 0;
|
||||||
|
|
||||||
int selected_shape = dv ? dv -> diagram() -> selectedContent().count(DiagramContent::Shapes) : 0;
|
int selected_shape = dv ? dv -> diagram() -> selectedContent().count(DiagramContent::Shapes) : 0;
|
||||||
int selected_editable = selected_elements_count + (selected_texts - selected_conductor_texts - selected_element_texts) + selected_image + selected_shape;
|
int selected_editable = selected_elements_count +
|
||||||
|
(selected_texts - selected_conductor_texts - selected_element_texts) +
|
||||||
|
selected_image +
|
||||||
|
selected_shape +
|
||||||
|
selected_conductors_count;
|
||||||
|
|
||||||
if (selected_editable == 1) {
|
if (selected_editable == 1)
|
||||||
|
{
|
||||||
edit_selection -> setEnabled(true);
|
edit_selection -> setEnabled(true);
|
||||||
//edit element
|
//edit element
|
||||||
if (selected_elements_count) {
|
if (selected_elements_count)
|
||||||
|
{
|
||||||
edit_selection -> setText(tr("\311diter l'\351lement", "edit element"));
|
edit_selection -> setText(tr("\311diter l'\351lement", "edit element"));
|
||||||
edit_selection -> setIcon(QET::Icons::ElementEdit);
|
edit_selection -> setIcon(QET::Icons::ElementEdit);
|
||||||
}
|
}
|
||||||
//edit text field
|
//edit text field
|
||||||
else if (selected_texts) {
|
else if (selected_texts)
|
||||||
|
{
|
||||||
edit_selection -> setText(tr("\311diter le champ de texte", "edit text field"));
|
edit_selection -> setText(tr("\311diter le champ de texte", "edit text field"));
|
||||||
edit_selection -> setIcon(QET::Icons::EditText);
|
edit_selection -> setIcon(QET::Icons::EditText);
|
||||||
}
|
}
|
||||||
//edit image
|
//edit image
|
||||||
else if (selected_image) {
|
else if (selected_image)
|
||||||
|
{
|
||||||
edit_selection -> setText(tr("\311diter l'image", "edit image"));
|
edit_selection -> setText(tr("\311diter l'image", "edit image"));
|
||||||
edit_selection -> setIcon(QET::Icons::resize_image);
|
edit_selection -> setIcon(QET::Icons::resize_image);
|
||||||
}
|
}
|
||||||
|
//edit conductor
|
||||||
|
else if (selected_conductors_count)
|
||||||
|
{
|
||||||
|
edit_selection -> setText(tr("\311diter le conducteur", "edit conductor"));
|
||||||
|
edit_selection -> setIcon(QET::Icons::ElementEdit);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
//not an editable item
|
//not an editable item
|
||||||
else {
|
else
|
||||||
|
{
|
||||||
edit_selection -> setText(tr("\311diter l'objet s\351lectionn\351", "edit selected item"));
|
edit_selection -> setText(tr("\311diter l'objet s\351lectionn\351", "edit selected item"));
|
||||||
edit_selection -> setIcon(QET::Icons::ElementEdit);
|
edit_selection -> setIcon(QET::Icons::ElementEdit);
|
||||||
edit_selection -> setEnabled(false);
|
edit_selection -> setEnabled(false);
|
||||||
|
|||||||
@@ -207,7 +207,6 @@ class QETDiagramEditor : public QETMainWindow {
|
|||||||
QAction *rotate_selection; ///< Rotate selected elements and text items by 90 degrees
|
QAction *rotate_selection; ///< Rotate selected elements and text items by 90 degrees
|
||||||
QAction *rotate_texts; ///< Direct selected text items to a specific angle
|
QAction *rotate_texts; ///< Direct selected text items to a specific angle
|
||||||
QAction *find_element; ///< Find the selected element in the panel
|
QAction *find_element; ///< Find the selected element in the panel
|
||||||
QAction *selection_prop; ///< Show a dialog describing the selection
|
|
||||||
|
|
||||||
QActionGroup m_row_column_actions_group; /// Action related to add/remove rows/column in diagram
|
QActionGroup m_row_column_actions_group; /// Action related to add/remove rows/column in diagram
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user