mirror of
https://bitbucket.org/mfeemster/fractorium.git
synced 2025-07-12 03:04:51 -04:00
--User changes
-Attempt to preserve xaos when adding xforms. Note this is not an exact copy, but just a preservation of some values based on position. -Add some acceleration to the changing of spinner values when dragging the right mouse button to adjust. -Make the pivot be the center of the viewable area when doing drag/rotate/scale with the right mouse button. --Clamp minimum scale to 10 --Draw a line from the mouse position to the pivot. -Keep a cache of the last added final xform with each flame so that it can be quickly added, removed, then added back for testing its effect. --This is not saved with the xml file and is solely for interactive editing. --Bug fixes -File filtering in open and save dialogs were broken. -Right clicking on integer spin boxes was causing the context menu to pop up, when it should be supressed just like double spin boxes. -Deleting xforms was still broken. --Code changes -Refactor the code for adding and pasting xforms into a single global static function called AddXformsWithXaos().
This commit is contained in:
@ -29,6 +29,7 @@ SpinBox::SpinBox(QWidget* p, int h, int step)
|
||||
setFocusPolicy(Qt::StrongFocus);
|
||||
setMinimumHeight(h);//setGeometry() has no effect, so set both of these instead.
|
||||
setMaximumHeight(h);
|
||||
setContextMenuPolicy(Qt::PreventContextMenu);
|
||||
lineEdit()->installEventFilter(this);
|
||||
lineEdit()->setAlignment(Qt::AlignLeft | Qt::AlignVCenter);
|
||||
connect(this, SIGNAL(valueChanged(int)), this, SLOT(onSpinBoxValueChanged(int)), Qt::QueuedConnection);
|
||||
@ -136,6 +137,7 @@ void SpinBox::OnTimeout()
|
||||
int xdistance = m_MouseMovePoint.x() - m_MouseDownPoint.x();
|
||||
int ydistance = m_MouseMovePoint.y() - m_MouseDownPoint.y();
|
||||
int distance = abs(xdistance) > abs(ydistance) ? xdistance : ydistance;
|
||||
distance = Sqr(distance) * (distance < 0 ? -1 : 1);
|
||||
double scale, val;
|
||||
int d = value();
|
||||
bool shift = QGuiApplication::keyboardModifiers().testFlag(Qt::ShiftModifier);
|
||||
|
Reference in New Issue
Block a user