diff --git a/.gitignore b/.gitignore index d90a81f..72e77d5 100644 --- a/.gitignore +++ b/.gitignore @@ -253,3 +253,4 @@ Builds/include/GL /Builds/MSVC/VS2017/UpgradeLog.htm /Builds/MSVC/VS2017/zlib.props *last.flame +/Source/Fractorium/Fractorium - Copy.ui diff --git a/Source/Fractorium/FinalRenderDialog.cpp b/Source/Fractorium/FinalRenderDialog.cpp index 0ca2d21..a62c4ea 100644 --- a/Source/Fractorium/FinalRenderDialog.cpp +++ b/Source/Fractorium/FinalRenderDialog.cpp @@ -73,6 +73,8 @@ FractoriumFinalRenderDialog::FractoriumFinalRenderDialog(QWidget* p, Qt::WindowF ui.FinalRenderStartButton->disconnect(SIGNAL(clicked(bool))); connect(ui.FinalRenderStartButton, SIGNAL(clicked(bool)), this, SLOT(OnRenderClicked(bool)), Qt::QueuedConnection); connect(ui.FinalRenderStopButton, SIGNAL(clicked(bool)), this, SLOT(OnCancelRenderClicked(bool)), Qt::QueuedConnection); + table->horizontalHeader()->setSectionResizeMode(0, QHeaderView::ResizeToContents); + ui.FinalRenderSizeTable->horizontalHeader()->setSectionResizeMode(0, QHeaderView::ResizeToContents); table = ui.FinalRenderDeviceTable; table->clearContents(); table->setRowCount(0); diff --git a/Source/Fractorium/Fractorium.cpp b/Source/Fractorium/Fractorium.cpp index 02a794f..3b40bc8 100644 --- a/Source/Fractorium/Fractorium.cpp +++ b/Source/Fractorium/Fractorium.cpp @@ -28,14 +28,13 @@ Fractorium::Fractorium(QWidget* p) qRegisterMetaType>("vector"); qRegisterMetaType("vv4F"); qRegisterMetaType("EmberTreeWidgetItemBase*"); - setDockOptions(DockOption::AllowNestedDocks | DockOption::AllowTabbedDocks); - setTabPosition(Qt::AllDockWidgetAreas, QTabWidget::TabPosition::North); - setTabShape(QTabWidget::TabShape::Triangular); tabifyDockWidget(ui.LibraryDockWidget, ui.FlameDockWidget); tabifyDockWidget(ui.FlameDockWidget, ui.XformsDockWidget); tabifyDockWidget(ui.XformsDockWidget, ui.XaosDockWidget); tabifyDockWidget(ui.XaosDockWidget, ui.PaletteDockWidget); tabifyDockWidget(ui.PaletteDockWidget, ui.InfoDockWidget); + setTabPosition(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea, QTabWidget::TabPosition::North); + setTabShape(QTabWidget::TabShape::Triangular); m_Docks.reserve(8); m_Docks.push_back(ui.LibraryDockWidget); m_Docks.push_back(ui.FlameDockWidget); @@ -43,6 +42,13 @@ Fractorium::Fractorium(QWidget* p) m_Docks.push_back(ui.XaosDockWidget); m_Docks.push_back(ui.PaletteDockWidget); m_Docks.push_back(ui.InfoDockWidget); + + for (auto dock : m_Docks)//Prevents a dock from ever getting accidentally hidden. + { + dock->setWindowFlags(dock->windowFlags() & Qt::WindowStaysOnTopHint); + dock->setAllowedAreas(Qt::DockWidgetArea::LeftDockWidgetArea | Qt::DockWidgetArea::RightDockWidgetArea); + } + m_FontSize = 9; m_VarSortMode = 1;//Sort by weight by default. m_PaletteSortMode = 0;//Sort by palette ascending by default. @@ -286,6 +292,7 @@ bool Fractorium::HaveFinal() /// True if top level, else false. void Fractorium::OnDockTopLevelChanged(bool topLevel) { + //setTabPosition(Qt::AllDockWidgetAreas, QTabWidget::TabPosition::North); //if (topLevel) //{ // if (ui.DockWidget->y() <= 0) @@ -306,6 +313,7 @@ void Fractorium::OnDockTopLevelChanged(bool topLevel) /// The dock widget area void Fractorium::dockLocationChanged(Qt::DockWidgetArea area) { + //setTabPosition(Qt::AllDockWidgetAreas, QTabWidget::TabPosition::North); //ui.DockWidget->resize(500, ui.DockWidget->height()); //ui.DockWidget->update(); //ui.dockWidget->setFloating(true); diff --git a/Source/Fractorium/Fractorium.ui b/Source/Fractorium/Fractorium.ui index b330729..c5ec95c 100644 --- a/Source/Fractorium/Fractorium.ui +++ b/Source/Fractorium/Fractorium.ui @@ -41,6 +41,9 @@ 16 + + QMainWindow::AllowNestedDocks|QMainWindow::AllowTabbedDocks|QMainWindow::AnimatedDocks|QMainWindow::GroupedDragging + @@ -112,7 +115,7 @@ - true + false QDockWidget::DockWidgetFloatable|QDockWidget::DockWidgetMovable @@ -258,7 +261,7 @@ false - 110 + 145 false @@ -834,7 +837,7 @@ false - 110 + 120 false @@ -1166,7 +1169,7 @@ false - 125 + 145 false @@ -1375,7 +1378,7 @@ false - 110 + 120 false @@ -1696,7 +1699,7 @@ false - 125 + 145 false @@ -1814,6 +1817,9 @@ 200 + + false + QDockWidget::DockWidgetFloatable|QDockWidget::DockWidgetMovable @@ -2008,15 +2014,18 @@ 770 0 295 - 881 + 700 295 - 624 + 200 + + false + QDockWidget::DockWidgetFloatable|QDockWidget::DockWidgetMovable @@ -2027,12 +2036,12 @@ Palette - + 5 - 5 + 4 5 @@ -2040,1417 +2049,70 @@ 4 - - - - - 0 - 0 - - - - - 0 - 21 - - - - - 16777215 - 21 - - - - Qt::NoFocus - - - QFrame::Panel - - - QFrame::Plain - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - false - - - QAbstractItemView::NoEditTriggers - - - QAbstractItemView::NoSelection - - - QAbstractItemView::ScrollPerPixel - - - QAbstractItemView::ScrollPerPixel - - - false - - - false - - - 1 - - - 2 - - - false - - - 27 - - - true - - - false - - - 20 - - - 20 - - - - - - - - - - 5 - - - QLayout::SetDefaultConstraint - - - 0 - - - 0 - - - 0 - - - - - true - - - - - - - - 30 - 0 - - - - - 30 - 16777215 - - - - X - - - false - - - - - - - - - Qt::StrongFocus - - - QFrame::Panel - - - QFrame::Plain - - - Qt::ScrollBarAsNeeded - - - false - - - QAbstractItemView::NoEditTriggers - - - false - - - QAbstractItemView::NoSelection - - - QAbstractItemView::ScrollPerPixel - - - false - - - 2 - - - false - - - true - - - false - - - 16 - - - false - - - 16 - - - false - - - - Name - - - AlignLeading|AlignVCenter - - - - - Palette - - - AlignLeading|AlignVCenter - - - - - - - - - 0 - 0 - - - - - - - - - 2 - 0 - - - - - 0 - 67 - - - - - 16777215 - 67 - - - - Qt::NoFocus - - - QFrame::Panel - - - QFrame::Plain - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - false - - - QAbstractItemView::NoEditTriggers - - - false - - - QAbstractItemView::NoSelection - - - QAbstractItemView::ScrollPerPixel - - - QAbstractItemView::ScrollPerPixel - - - false - - - false - - - 3 - - - 4 - - - false - - - 62 - - - 62 - - - true - - - false - - - 22 - - - false - - - 22 - - - - - - - - - - - Hue - - - The degrees to rotate the hue of the HSV representation of the RGB color by - - - - - Contrast - - - <html><head/><body><p>The difference between the lightest and darkest colors in the palette.</p><p>Negative values decrease the difference, and bring the colors toward gray.</p><p>Positive values increase the difference and make the colors more saturated.</p></body></html> - - - - - Saturation - - - The percentage to add to the saturation (intensity) component of the HSV representation of the RGB color - - - - - Blur - - - The width in pixels of the blurring - - - - - Brightness - - - <html><head/><body><p>The value to add to each channel. Negative values bring it toward black, positive values toward white.</p></body></html> - - - - - - - - - - Frequency - - - <html><head/><body><p>The number of times to repeat the palette</p></body></html> - - - - - - - - 4 - - - 0 - - - 0 - - - - - - 0 - 24 - - - - - 16777215 - 24 - - - - Select a random palette from the list - - - Random Palette - - - - - - - - 0 - 24 - - - - - 16777215 - 24 - - - - Apply a random adjustment to the current palette - - - Random Adjustment - - - false - - - - - - - - 0 - 24 - - - - - 16777215 - 24 - - - - Open the palette editor to make a custom palette - - - Palette Editor... - - - - - - - - - - 0 - 0 - - - - <html><head/><body><p>Reset all of the curves to their default position. This has the effect of disabling application of the color curves.</p></body></html> - - - Reset Curves - - - - - - - - 0 - 0 - - - - - 245 - 245 - - - - - 245 - 245 - - - - true - - - false - + + QFrame::NoFrame QFrame::Plain - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - - - 219 - 219 - 219 - - - - - - 0.000000000000000 - 0.000000000000000 - 245.000000000000000 - 245.000000000000000 - - - - QGraphicsView::NoAnchor - - - QGraphicsView::FullViewportUpdate - - - - - - - <html><head/><body><p>When curves are on top of each other, it can be hard to grab them with the mouse, so use these radio buttons to specify which color you intend to grab.</p><p>If they are not on top of each other, just dragging the desired dot with the mouse will work.</p></body></html> - - - Curve - - - - 4 - - - 6 - - - 2 - - - 0 - - - 6 - - - - - All - - - true - - - - - - - Red - - - - - - - Green - - - - - - - Blue - - - - - - - - - - - - - 240 - 0 - 291 - 881 - - - - - 291 - 632 - - - - QDockWidget::DockWidgetFloatable|QDockWidget::DockWidgetMovable - - - Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea - - - Xforms - - - - - 5 - - - 4 - - - 5 - - - 4 - - - 4 - - - - - 2 - - - 0 - - - - - - 0 - 22 - - - - - 65 - 22 - - - - - 65 - 22 - - - - Current xform - - - false - - - 12 - - - - 9 - 9 - - - - true - - - - - - - - 0 - 0 - - - - - 25 - 24 - - - - - 16777215 - 24 - - - - Add xform - - - - - - - :/Fractorium/Icons/add.png:/Fractorium/Icons/add.png - - - - - - - - 0 - 0 - - - - - 25 - 24 - - - - - 16777215 - 24 - - - - Add linked xform - - - - - - - :/Fractorium/Icons/link-add.png:/Fractorium/Icons/link-add.png - - - - - - - - 0 - 0 - - - - - 25 - 24 - - - - - 16777215 - 24 - - - - Duplicate selected xforms - - - - - - - :/Fractorium/Icons/editraise.png:/Fractorium/Icons/editraise.png - - - - - - - - 0 - 0 - - - - - 25 - 24 - - - - - 16777215 - 24 - - - - Clear selected xforms' variations - - - - - - - :/Fractorium/Icons/eraser.png:/Fractorium/Icons/eraser.png - - - - - - - - 0 - 0 - - - - - 25 - 24 - - - - - 16777215 - 24 - - - - Delete selected xforms - - - - - - - :/Fractorium/Icons/del.png:/Fractorium/Icons/del.png - - - - - - - - 0 - 0 - - - - - 58 - 24 - - - - - 58 - 24 - - - - - 0 - 0 - - - - Add final xform - - - Qt::LeftToRight - - - Final - - - - :/Fractorium/Icons/add.png:/Fractorium/Icons/add.png - - - - - - - - - - 2 - 0 - - - - - 0 - 44 - - - - - 16777215 - 44 - - - - - true - - - - Qt::StrongFocus - - - false - - - - - - QFrame::Panel - - - QFrame::Plain - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - false - - - QAbstractItemView::DoubleClicked|QAbstractItemView::SelectedClicked - - - false - - - QAbstractItemView::NoSelection - - - QAbstractItemView::ScrollPerPixel - - - QAbstractItemView::ScrollPerPixel - - - false - - - false - - - 1 - - - 2 - - - false - - - 110 - - - false - - - 27 - - + true - - - false - - - 21 - - - false - - - 21 - - - - - Weight + + + + + 0 + 0 + 285 + 673 + - - - - Name - - - - - AlignLeading|AlignVCenter - - - - - AlignLeading|AlignVCenter - - - - - - - - - 0 - 0 - - - - - 0 - 0 - - - - - - - false - - - QTabWidget::Triangular - - - 2 - - - + 0 0 - - - - - true - - - Color - - - Color palette index for the current xform, and curve adjustment - - - - QFormLayout::AllNonFixedFieldsGrow - + - 6 + 0 - 6 + 0 - 6 + 0 - 6 + 0 - - + + 0 + + + + + + 0 + 0 + + + + + + - 0 + 2 0 0 - 22 - - - - - 16777215 - 22 - - - - - true - - - - Qt::NoFocus - - - - - - false - - - - - - QFrame::Panel - - - QFrame::Plain - - - 1 - - - 0 - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - QAbstractItemView::NoEditTriggers - - - false - - - QAbstractItemView::NoSelection - - - QAbstractItemView::ScrollPerPixel - - - QAbstractItemView::ScrollPerPixel - - - true - - - false - - - false - - - 1 - - - 2 - - - false - - - false - - - 27 - - - true - - - false - - - 21 - - - false - - - 21 - - - false - - - - - - - - - - - - - - - - - - - - - AlignLeading|AlignVCenter - - - - - - - - - 0 - 0 - - - - - 0 - 19 - - - - - 16777215 - 19 - - - - Qt::NoFocus - - - QFrame::Panel - - - QFrame::Plain - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAlwaysOff - - - QAbstractItemView::NoEditTriggers - - - false - - - QAbstractItemView::NoSelection - - - QAbstractItemView::ScrollPerPixel - - - QAbstractItemView::ScrollPerPixel - - - false - - - false - - - false - - - 1 - - - 1 - - - false - - - 256 - - - true - - - false - - - 19 - - - false - - - - - - - - - NoItemFlags - - - - - - - - - 0 - 0 - - - - - 162 - 18 - - - - - 16777215 - 18 - - - - Qt::NoFocus - - - 0 - - - 255 - - - 1 - - - 10 - - - 128 - - - true - - - Qt::Horizontal - - - false - - - false - - - - - - - 0 - - - - - <html><head/><body><p>Set all xform color indices to random numbers between 0 and 1, inclusive</p></body></html> - - - Random Indices - - - - - - - <html><head/><body><p>Set all xform color indices to 0 or 1, alternating</p></body></html> - - - Toggle Indices - - - - - - - <html><head/><body><p>Set all xform color speed values to random numbers between 0 and 1, inclusive</p></body></html> - - - Random Color Speeds - - - - - - - <html><head/><body><p>Set all xform color speed values to 0 or 1, alternating</p></body></html> - - - Toggle Color Speed - - - - - - - - - - 0 - 0 - - - - - 0 - 45 + 67 @@ -3459,26 +2121,15 @@ 67 - - - true - - Qt::NoFocus - - - QFrame::Panel QFrame::Plain - - 1 - Qt::ScrollBarAlwaysOff @@ -3494,13 +2145,933 @@ false - + + QAbstractItemView::NoSelection + + + QAbstractItemView::ScrollPerPixel + + + QAbstractItemView::ScrollPerPixel + + false - + false - + + 3 + + + 4 + + + false + + + 62 + + + 62 + + + true + + + false + + + 22 + + + false + + + 22 + + + + + + + + + + + Hue + + + The degrees to rotate the hue of the HSV representation of the RGB color by + + + + + Contrast + + + <html><head/><body><p>The difference between the lightest and darkest colors in the palette.</p><p>Negative values decrease the difference, and bring the colors toward gray.</p><p>Positive values increase the difference and make the colors more saturated.</p></body></html> + + + + + Saturation + + + The percentage to add to the saturation (intensity) component of the HSV representation of the RGB color + + + + + Blur + + + The width in pixels of the blurring + + + + + Brightness + + + <html><head/><body><p>The value to add to each channel. Negative values bring it toward black, positive values toward white.</p></body></html> + + + + + + + + + + Frequency + + + <html><head/><body><p>The number of times to repeat the palette</p></body></html> + + + + + + + + 4 + + + 0 + + + 0 + + + + + + 0 + 24 + + + + + 16777215 + 24 + + + + Select a random palette from the list + + + Random Palette + + + + + + + + 0 + 24 + + + + + 16777215 + 24 + + + + Apply a random adjustment to the current palette + + + Random Adjustment + + + false + + + + + + + + 0 + 24 + + + + + 16777215 + 24 + + + + Open the palette editor to make a custom palette + + + Palette Editor... + + + + + + + + + + 0 + 0 + + + + + 0 + 21 + + + + + 16777215 + 21 + + + + Qt::NoFocus + + + QFrame::Panel + + + QFrame::Plain + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + false + + + QAbstractItemView::NoEditTriggers + + + QAbstractItemView::NoSelection + + + QAbstractItemView::ScrollPerPixel + + + QAbstractItemView::ScrollPerPixel + + + false + + + false + + + 1 + + + 2 + + + false + + + 27 + + + true + + + false + + + 20 + + + 20 + + + + + + + + + + 5 + + + QLayout::SetDefaultConstraint + + + 0 + + + 0 + + + 0 + + + + + true + + + + + + + + 30 + 0 + + + + + 30 + 16777215 + + + + X + + + false + + + + + + + + + + 0 + 147 + + + + Qt::StrongFocus + + + QFrame::Panel + + + QFrame::Plain + + + Qt::ScrollBarAsNeeded + + + false + + + QAbstractItemView::NoEditTriggers + + + false + + + QAbstractItemView::NoSelection + + + QAbstractItemView::ScrollPerPixel + + + false + + + 2 + + + false + + + true + + + false + + + 16 + + + false + + + 16 + + + false + + + + Name + + + AlignLeading|AlignVCenter + + + + + Palette + + + AlignLeading|AlignVCenter + + + + + + + + + 0 + 0 + + + + <html><head/><body><p>Reset all of the curves to their default position. This has the effect of disabling application of the color curves.</p></body></html> + + + Reset Curves + + + + + + + + 0 + 0 + + + + + 245 + 245 + + + + + 245 + 245 + + + + true + + + false + + + QFrame::NoFrame + + + QFrame::Plain + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + + + 219 + 219 + 219 + + + + + + 0.000000000000000 + 0.000000000000000 + 245.000000000000000 + 245.000000000000000 + + + + QGraphicsView::NoAnchor + + + QGraphicsView::FullViewportUpdate + + + + + + + <html><head/><body><p>When curves are on top of each other, it can be hard to grab them with the mouse, so use these radio buttons to specify which color you intend to grab.</p><p>If they are not on top of each other, just dragging the desired dot with the mouse will work.</p></body></html> + + + Curve + + + + 4 + + + 6 + + + 2 + + + 0 + + + 6 + + + + + All + + + true + + + + + + + Red + + + + + + + Green + + + + + + + Blue + + + + + + + + + + + + + + + + + 240 + 0 + 301 + 901 + + + + + 291 + 200 + + + + false + + + QDockWidget::DockWidgetFloatable|QDockWidget::DockWidgetMovable + + + Qt::LeftDockWidgetArea|Qt::RightDockWidgetArea + + + Xforms + + + + + 4 + + + 5 + + + 4 + + + 5 + + + 4 + + + + + QFrame::NoFrame + + + QFrame::Plain + + + true + + + + + 0 + 0 + 291 + 874 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + 2 + + + 0 + + + + + + 0 + 22 + + + + + 65 + 22 + + + + + 65 + 22 + + + + Current xform + + + false + + + 12 + + + + 9 + 9 + + + + true + + + + + + + + 0 + 0 + + + + + 25 + 24 + + + + + 16777215 + 24 + + + + Add xform + + + + + + + :/Fractorium/Icons/add.png:/Fractorium/Icons/add.png + + + + + + + + 0 + 0 + + + + + 25 + 24 + + + + + 16777215 + 24 + + + + Add linked xform + + + + + + + :/Fractorium/Icons/link-add.png:/Fractorium/Icons/link-add.png + + + + + + + + 0 + 0 + + + + + 25 + 24 + + + + + 16777215 + 24 + + + + Duplicate selected xforms + + + + + + + :/Fractorium/Icons/editraise.png:/Fractorium/Icons/editraise.png + + + + + + + + 0 + 0 + + + + + 25 + 24 + + + + + 16777215 + 24 + + + + Clear selected xforms' variations + + + + + + + :/Fractorium/Icons/eraser.png:/Fractorium/Icons/eraser.png + + + + + + + + 0 + 0 + + + + + 25 + 24 + + + + + 16777215 + 24 + + + + Delete selected xforms + + + + + + + :/Fractorium/Icons/del.png:/Fractorium/Icons/del.png + + + + + + + + 0 + 0 + + + + + 58 + 24 + + + + + 58 + 24 + + + + + 0 + 0 + + + + Add final xform + + + Qt::LeftToRight + + + Final + + + + :/Fractorium/Icons/add.png:/Fractorium/Icons/add.png + + + + + + + + + + 2 + 0 + + + + + 0 + 44 + + + + + 16777215 + 44 + + + + + true + + + + Qt::StrongFocus + + + false + + + + + + QFrame::Panel + + + QFrame::Plain + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + false + + + QAbstractItemView::DoubleClicked|QAbstractItemView::SelectedClicked + + false @@ -3512,27 +3083,21 @@ QAbstractItemView::ScrollPerPixel - - true - - - Qt::SolidLine - false false + + 1 + 2 false - - false - 110 @@ -3549,179 +3114,679 @@ false - 22 + 21 false - 22 + 21 - - false - - - - Color Speed - - - - - Opacity - - - - - Direct Color - - + - Field + Weight - + Name - - Color Speed - - - <html><head/><body><p>The speed with which the color indices are pulled toward the current xform’s color index. Negative values push the color index away.</p></body></html> - - - - - 0 - - - - true - - AlignLeading|AlignVCenter - - - Opacity - - - <html><head/><body><p>How visible the current xform’s contribution to the image is.</p><p>0 is invisible, 1 is fully visible.</p></body></html> - - - - - 0 - - - - - Direct Color - - - <html><head/><body><p>Amount of directly computed color value to add to the color index.</p><p>Used only with variations that use direct coloring which are usually prefixed with dc_.</p></body></html> - - - - - 0 + + + AlignLeading|AlignVCenter - - + + - <html><head/><body><p>When checked, the current xform is the only visible one. This feature is useful for determining how much each xform contributes to the final image.</p><p>Note that checking this does not affect the opacity values stored in the Xml file when saved. It is only a temporary adjustment when editing within the program.</p></body></html> + <html><head/><body><p>Rotate this xform during the rotation phase when creating a sequence for animation</p></body></html> - Solo + Animate - - - - - - 0 - 0 - - - - - - - true - - - Affine - - - Affine transforms for the current xform - - - - 5 - - - 6 - - - 5 - - - 6 - - - 5 - - + + + + 0 + 0 + + + + + 0 + 0 + + + + + false - - QFrame::NoFrame + + QTabWidget::Triangular - - QFrame::Raised + + 2 - - true - - - - - 0 - 0 - 128 - 686 - + + + + 0 + 0 + + + + true - - - 4 + + Color + + + Color palette index for the current xform, and curve adjustment + + + + QFormLayout::AllNonFixedFieldsGrow - 0 + 6 - 0 + 6 - 0 + 6 - 0 + 6 + + + + + + 0 + 0 + + + + + 0 + 22 + + + + + 16777215 + 22 + + + + + true + + + + Qt::NoFocus + + + + + + false + + + + + + QFrame::Panel + + + QFrame::Plain + + + 1 + + + 0 + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QAbstractItemView::NoEditTriggers + + + false + + + QAbstractItemView::NoSelection + + + QAbstractItemView::ScrollPerPixel + + + QAbstractItemView::ScrollPerPixel + + + true + + + false + + + false + + + 1 + + + 2 + + + false + + + false + + + 27 + + + true + + + false + + + 21 + + + false + + + 21 + + + false + + + + + + + + + + + + + + + + + + + + + AlignLeading|AlignVCenter + + + + + + + + + 0 + 0 + + + + + 0 + 19 + + + + + 16777215 + 19 + + + + Qt::NoFocus + + + QFrame::Panel + + + QFrame::Plain + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QAbstractItemView::NoEditTriggers + + + false + + + QAbstractItemView::NoSelection + + + QAbstractItemView::ScrollPerPixel + + + QAbstractItemView::ScrollPerPixel + + + false + + + false + + + false + + + 1 + + + 1 + + + false + + + 256 + + + true + + + false + + + 19 + + + false + + + + + + + + + NoItemFlags + + + + + + + + + 0 + 0 + + + + + 162 + 18 + + + + + 16777215 + 18 + + + + Qt::NoFocus + + + 0 + + + 255 + + + 1 + + + 10 + + + 128 + + + true + + + Qt::Horizontal + + + false + + + false + + + + + + + 0 + + + + + <html><head/><body><p>Set all xform color indices to random numbers between 0 and 1, inclusive</p></body></html> + + + Random Indices + + + + + + + <html><head/><body><p>Set all xform color indices to 0 or 1, alternating</p></body></html> + + + Toggle Indices + + + + + + + <html><head/><body><p>Set all xform color speed values to random numbers between 0 and 1, inclusive</p></body></html> + + + Random Color Speeds + + + + + + + <html><head/><body><p>Set all xform color speed values to 0 or 1, alternating</p></body></html> + + + Toggle Color Speed + + + + + + + + + + 0 + 0 + + + + + 0 + 45 + + + + + 16777215 + 67 + + + + + true + + + + Qt::NoFocus + + + + + + QFrame::Panel + + + QFrame::Plain + + + 1 + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + false + + + QAbstractItemView::NoEditTriggers + + + false + + + false + + + false + + + false + + + QAbstractItemView::NoSelection + + + QAbstractItemView::ScrollPerPixel + + + QAbstractItemView::ScrollPerPixel + + + true + + + Qt::SolidLine + + + false + + + false + + + 2 + + + false + + + false + + + 125 + + + false + + + 27 + + + true + + + false + + + 22 + + + false + + + 22 + + + false + + + + Color Speed + + + + + Opacity + + + + + Direct Color + + + + + Field + + + + + + + + + + Color Speed + + + <html><head/><body><p>The speed with which the color indices are pulled toward the current xform’s color index. Negative values push the color index away.</p></body></html> + + + + + 0 + + + + true + + + + AlignLeading|AlignVCenter + + + + + Opacity + + + <html><head/><body><p>How visible the current xform’s contribution to the image is.</p><p>0 is invisible, 1 is fully visible.</p></body></html> + + + + + 0 + + + + + Direct Color + + + <html><head/><body><p>Amount of directly computed color value to add to the color index.</p><p>Used only with variations that use direct coloring which are usually prefixed with dc_.</p></body></html> + + + + + 0 + + + + + + + + <html><head/><body><p>When checked, the current xform is the only visible one. This feature is useful for determining how much each xform contributes to the final image.</p><p>Note that checking this does not affect the opacity values stored in the Xml file when saved. It is only a temporary adjustment when editing within the program.</p></body></html> + + + Solo + + + + + + + + + 0 + 0 + + + + + + + true + + + Affine + + + Affine transforms for the current xform + + + + 5 + + + 6 + + + 5 + + + 6 + + + 5 @@ -5341,16 +5406,6 @@ - - - - <html><head/><body><p>Check to display affine values in polar coordinates, uncheck to display them in Cartesian form.</p></body></html> - - - Polar - - - @@ -5401,6 +5456,16 @@ + + + + <html><head/><body><p>Check to display affine values in polar coordinates, uncheck to display them in Cartesian form.</p></body></html> + + + Polar + + + @@ -5419,434 +5484,424 @@ - - - - - - - - - - true - - - Variations - - - Full list of available variations and their weights for the currently selected xform - - - - 6 - - - 6 - - - 6 - - - 6 - - - - - 5 - - - QLayout::SetDefaultConstraint - - - 0 - - - 0 - - - 0 - - - - - - 0 - 22 - + + + + + + true + + + Variations + + + Full list of available variations and their weights for the currently selected xform + + + + 6 - - - 16777215 - 22 - + + 6 - - - - - - - 30 - 23 - + + 6 - - - 30 - 23 - + + 6 - - X - - - false - - - - - - - - - - 0 - 0 - - - - true - - - Qt::WheelFocus - - - Qt::DefaultContextMenu - - - QFrame::Panel - - - QFrame::Plain - - - 1 - - - QAbstractItemView::NoEditTriggers - - - false - - - QAbstractItemView::SingleSelection - - - QAbstractItemView::SelectRows - - - 12 - - - true - - - true - - - false - - - false - - - 2 - - - 70 - - - true - - - 10 - - - true - - - true - - - - Variation - - - - - Weight - - - - - Spherical - - - 0 - - - ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled - - - - - Sinusoidal - - - 0 - - - ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled - - - - - Pdj - - - 0 - - - ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled - - - - pdj_d - - - 1 - - - ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled - - - - - pdj_c - - - 2 - - - ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled - - - - - pdj_b - - - 1.5 - - - ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled - - - - - pdj_a - - - 1 - - - ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled - - - - - - Linear - - - 0 - - - ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled - - - - - - - - - - - - true - - - Select - - - Select multiple xforms to apply operations to - - - - 3 - - - 5 - - - 5 - - - 5 - - - 4 - - - - - Select All - - - - - - - Select None - - - - - - - - 0 - 0 - - - - false - - - Select Xforms - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - 0 - - - 2 - - - 2 - - - 2 - - - 2 - - - - - - 0 - 0 - - - - false - - - QFrame::NoFrame - - - QFrame::Plain - - - QAbstractScrollArea::AdjustToContents - - - true - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop - - - - - 0 - 0 - 136 - 58 - + + + + 5 + + QLayout::SetDefaultConstraint + + + 0 + + + 0 + + + 0 + + + + + + 0 + 22 + + + + + 16777215 + 22 + + + + + + + + + 30 + 23 + + + + + 30 + 23 + + + + X + + + false + + + + + + + + + + 0 + 0 + + + + true + + + Qt::WheelFocus + + + Qt::DefaultContextMenu + + + QFrame::Panel + + + QFrame::Plain + + + 1 + + + QAbstractItemView::NoEditTriggers + + + false + + + QAbstractItemView::SingleSelection + + + QAbstractItemView::SelectRows + + + 12 + + + true + + + true + + + false + + + false + + + 2 + + + 70 + + + true + + + 10 + + + true + + + true + + + + Variation + + + + + Weight + + + + + Spherical + + + 0 + + + ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled + + + + + Sinusoidal + + + 0 + + + ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled + + + + + Pdj + + + 0 + + + ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled + + + + pdj_d + + + 1 + + + ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled + + + + + pdj_c + + + 2 + + + ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled + + + + + pdj_b + + + 1.5 + + + ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled + + + + + pdj_a + + + 1 + + + ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled + + + + + + Linear + + + 0 + + + ItemIsSelectable|ItemIsEditable|ItemIsDragEnabled|ItemIsUserCheckable|ItemIsEnabled + + + + + + + + + + + + true + + + Select + + + Select multiple xforms to apply operations to + + + + 3 + + + 5 + + + 5 + + + 5 + + + 4 + + + + + Select All + + + + + + + Select None + + + + + 0 0 - - - 6 + + false + + + Select Xforms + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + 0 - 6 + 2 - 6 + 2 - 6 + 2 - 6 + 2 - - - - DeleteMeCheckBox + + + + + 0 + 0 + - - - - - - CheckBox + + false + + QFrame::NoFrame + + + QFrame::Plain + + + QAbstractScrollArea::AdjustToContents + + + true + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop + + + + + 0 + 0 + 267 + 653 + + + + + 0 + 0 + + + + + 6 + + + 6 + + + 6 + + + 6 + + + 6 + + + + + DeleteMeCheckBox + + + + + + + CheckBox + + + + + - - - + + + - - - - <html><head/><body><p>Rotate this xform during the rotation phase when creating a sequence for animation</p></body></html> - - - Animate - - - @@ -5865,6 +5920,9 @@ 200 + + false + QDockWidget::DockWidgetFloatable|QDockWidget::DockWidgetMovable @@ -6895,8 +6953,8 @@ - 150 - 251 + 200 + 200 diff --git a/Source/Fractorium/FractoriumParams.cpp b/Source/Fractorium/FractoriumParams.cpp index bdd985f..7463fe5 100644 --- a/Source/Fractorium/FractoriumParams.cpp +++ b/Source/Fractorium/FractoriumParams.cpp @@ -40,6 +40,7 @@ void Fractorium::InitParamsUI() comboVals.push_back("Linear"); SetupCombo(table, this, row, 1, m_PaletteModeCombo, comboVals, SIGNAL(currentIndexChanged(int)), SLOT(OnPaletteModeComboCurrentIndexChanged(int))); m_PaletteModeCombo->SetCurrentIndexStealth(int(ePaletteMode::PALETTE_LINEAR)); + table->horizontalHeader()->setSectionResizeMode(0, QHeaderView::ResizeToContents); //Geometry. row = 0; table = ui.GeometryTable; @@ -61,6 +62,7 @@ void Fractorium::InitParamsUI() m_ZPosSpin->setDecimals(3); m_PerspectiveSpin->setDecimals(4); m_DepthBlurSpin->setDecimals(3); + table->horizontalHeader()->setSectionResizeMode(0, QHeaderView::ResizeToContents); //Filter. row = 0; table = ui.FilterTable; @@ -71,6 +73,7 @@ void Fractorium::InitParamsUI() SetupSpinner(table, this, row, 1, m_DEFilterMinRadiusSpin, spinHeight, 0, 25, 1, SIGNAL(valueChanged(double)), SLOT(OnDEFilterMinRadiusWidthChanged(double)), true, 0, 0, 0); SetupSpinner(table, this, row, 1, m_DEFilterMaxRadiusSpin, spinHeight, 0, 25, 1, SIGNAL(valueChanged(double)), SLOT(OnDEFilterMaxRadiusWidthChanged(double)), true, 0.0, 9.0, 0); SetupSpinner(table, this, row, 1, m_DECurveSpin, spinHeight, 0.15, 5, 0.1, SIGNAL(valueChanged(double)), SLOT(OnDEFilterCurveWidthChanged(double)), true, 0.4, 0.4, 0.4); + table->horizontalHeader()->setSectionResizeMode(0, QHeaderView::ResizeToContents); //Iteration. row = 0; table = ui.IterationTable; @@ -79,6 +82,7 @@ void Fractorium::InitParamsUI() SetupSpinner( table, this, row, 1, m_FuseSpin, spinHeight, 1, 1000, 5, SIGNAL(valueChanged(int)), SLOT(OnFuseChanged(int)), true, 15, 15, 15); SetupSpinner(table, this, row, 1, m_QualitySpin, spinHeight, 1, dmax, 50, SIGNAL(valueChanged(double)), SLOT(OnQualityChanged(double)), true, quality, 10, 10); SetupSpinner( table, this, row, 1, m_SupersampleSpin, spinHeight, 1, 4, 1, SIGNAL(valueChanged(int)), SLOT(OnSupersampleChanged(int)), true, 1, 1, 1); + table->horizontalHeader()->setSectionResizeMode(0, QHeaderView::ResizeToContents); //Animation. row = 0; table = ui.AnimationTable; @@ -96,6 +100,7 @@ void Fractorium::InitParamsUI() SetupSpinner(table, this, row, 1, m_TemporalFilterWidthSpin, spinHeight, 1, 10, 1, SIGNAL(valueChanged(double)), SLOT(OnTemporalFilterWidthChanged(double)), true, 1); comboVals = TemporalFilterCreator::FilterTypes(); SetupCombo( table, this, row, 1, m_TemporalFilterTypeCombo, comboVals, SIGNAL(currentIndexChanged(const QString&)), SLOT(OnTemporalFilterTypeComboCurrentIndexChanged(const QString&))); + table->horizontalHeader()->setSectionResizeMode(0, QHeaderView::ResizeToContents); } /// diff --git a/Source/Fractorium/OptionsDialog.cpp b/Source/Fractorium/OptionsDialog.cpp index a554fd3..d6e473e 100644 --- a/Source/Fractorium/OptionsDialog.cpp +++ b/Source/Fractorium/OptionsDialog.cpp @@ -28,6 +28,8 @@ FractoriumOptionsDialog::FractoriumOptionsDialog(QWidget* p, Qt::WindowFlags f) ui.OptionsIdentityTable->setCellWidget(1, 1, m_UrlEdit); m_NickEdit = new QLineEdit(ui.OptionsIdentityTable); ui.OptionsIdentityTable->setCellWidget(2, 1, m_NickEdit); + table->horizontalHeader()->setSectionResizeMode(0, QHeaderView::ResizeToContents); + ui.OptionsIdentityTable->horizontalHeader()->setSectionResizeMode(0, QHeaderView::ResizeToContents); table = ui.DeviceTable; table->clearContents(); table->setRowCount(0);