mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2026-08-13 18:14:13 +02:00
615e40dee2
Now a new checkbox in the dynamictextfieldeditor is available (by default set to false for legacy) to make it possible to turn dynamic text fields around its own center. This resolves an undesirable behaviour that occurs when the text alignment is retained Including translation to english and german
89 lines
2.6 KiB
C++
89 lines
2.6 KiB
C++
/*
|
|
Copyright 2006-2026 The QElectroTech Team
|
|
This file is part of QElectroTech.
|
|
|
|
QElectroTech is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation, either version 2 of the License, or
|
|
(at your option) any later version.
|
|
|
|
QElectroTech 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 QElectroTech. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
#ifndef DYNAMICTEXTFIELDEDITOR_H
|
|
#define DYNAMICTEXTFIELDEDITOR_H
|
|
|
|
#include "../elementitemeditor.h"
|
|
#include "../graphicspart/partdynamictextfield.h"
|
|
|
|
#ifdef BUILD_WITHOUT_KF5
|
|
#else
|
|
# include <KColorButton>
|
|
#endif
|
|
|
|
namespace Ui {
|
|
class DynamicTextFieldEditor;
|
|
}
|
|
|
|
/**
|
|
@brief The DynamicTextFieldEditor class
|
|
This class provide a widget used to edit the property of a dynamic text field
|
|
*/
|
|
class DynamicTextFieldEditor : public ElementItemEditor {
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit DynamicTextFieldEditor(QETElementEditor *editor, PartDynamicTextField *text_field = nullptr, QWidget *parent = nullptr);
|
|
~DynamicTextFieldEditor() override;
|
|
|
|
bool setPart(CustomElementPart *part) override;
|
|
bool setParts(QList <CustomElementPart *>) override;
|
|
CustomElementPart *currentPart() const override;
|
|
QList<CustomElementPart*> currentParts() const override;
|
|
void updateForm() override;
|
|
|
|
private:
|
|
void setupWidget();
|
|
void fillInfoComboBox();
|
|
void setUpConnections();
|
|
void disconnectConnections();
|
|
void updateTextFromWidgetsEnabled(int index);
|
|
|
|
private slots:
|
|
void on_m_x_sb_editingFinished();
|
|
void on_m_y_sb_editingFinished();
|
|
void on_m_rotation_sb_editingFinished();
|
|
void on_m_user_text_le_editingFinished();
|
|
void on_m_size_sb_editingFinished();
|
|
void on_m_frame_cb_clicked();
|
|
void on_m_width_sb_editingFinished();
|
|
void on_m_elmt_info_cb_activated(int index);
|
|
void on_m_text_from_cb_activated(int index);
|
|
void on_m_composite_text_pb_clicked();
|
|
void on_m_alignment_pb_clicked();
|
|
void on_m_font_pb_clicked();
|
|
|
|
void m_color_kpb_changed(QColor newColor);
|
|
|
|
void on_m_keep_visual_rotation_cb_clicked();
|
|
void on_m_rotation_point_center_cb_clicked();
|
|
|
|
private:
|
|
Ui::DynamicTextFieldEditor *ui;
|
|
QPointer<PartDynamicTextField> m_text_field;
|
|
QList<PartDynamicTextField*> m_parts;
|
|
QList<QMetaObject::Connection> m_connection_list;
|
|
|
|
#ifdef BUILD_WITHOUT_KF5
|
|
#else
|
|
KColorButton* m_color_kpb = nullptr;
|
|
#endif
|
|
};
|
|
|
|
#endif // DYNAMICTEXTFIELDEDITOR_H
|