MaterialFX/.run/MaterialFX [testrun].run.xml
palexdev 160bc46473 💥 Huge Update [Part 2]
Disclaimer: I recently switched to Linux for production because I was tired of Bugdows but because they use different line endings IntelliJ is showing me that all files are changed, also the ones with identical content. I re-normalized the project and added a .gitattributes file. I'm not sure how GitHub will visualize this commit, if it's messed sorry in advance... but don't worry, as always all changes are listed here 😉

⬆️ Upgraded VirtualizedFX to version 11.2.1

Demo
🚧 Temporarily "disabled" or non-functional some showcases
 Added new tests

MaterialFX
Beans Package
 Added convenience properties for Java's functions
 Added convenience property to represent a NumberRange
 Added many new beans
♻️ NumberRange: implemented hashCode, equals and toString, added two new methods to convert a range on integers to a List or a Set
🚚 Renamed RipplePosition ti PositionBean and moved to this package

Collections Package
 TransformableList is a new kind of ObservableList that combines JavaFX's FilteredList and SortedList functionalities into one
 TransformableListWrapper is an ObservableList which wraps both the source list and the transformable list in the same class. This makes using TransformableLists less verbose as modifications to the source list can be made directly from this wrapper

Controls Package
🔥 Removed AbstractMFXNotificationPane
🔥 Removed MFXNotification
🔥 Removed SimpleMFXNotificationPane
 Added a new cell to contain notifications
 FilterPane, a new control that allows to build Predicate filters interactively
 MFXNotificationCenter, a new control that allows to display multiple notifications. It is basically an icon that opens a popup which contains not only the list of notifications but also controls to manage them
 MFXPopup, extension of PopupControl to easily set the popup's content and position it by using HPos and VPos enumerations. It also introduces a hover functionality
 MFXSimpleNotification, a simple implementation of INotification

Effects Package
 ConsumerTransition, an implementation of Transition that uses a consumer to perform some action when the interpolate method is called
 Interpolators, a new enumerator that offers some new interpolators for JavaFX's animations

Enums Package
♻️ Moved all MaterialFX enumerators to this top level package
 ChainMode, a new enumerator mainly used by PredicateUtils to chain two predicates
 NotificationCounterStyle, a new enumerator to specify MFXNotificationCenter's counter style
 NotificationPos, a new enumerator to specify at which position a notification system should place the notification
 NotificationState, a new enumerator to represent the read state of a notification

Factories Package
♻️ Moved all MaterialFX factories to this top level package
 InsetsFactory, a new factory tp build JavaFX's Insets objects

Filter Package
💥 The filter API has been completely remade and now it's super flexible, super useful, super amazin haha. I won't describe it here as there are a LOT of new classes and concepts to be described so I recommend you to read AbstractFilter, FilterBean and BiPredicateBean documentations, usage examples can be also found in the demo (not yet at time of writing) and in the documentation of MFXFilterPane
🚧 MFXFilterDialog has been completely commented, will be reworked for the new API

Font Package
 Added new resources

Notifications Package
💥 The notification API has been completely remade. Now there are to notification systems, one is very similar to the old one but it is limited to one notification at a time at a given position. This restriction helper to keep the system simple and efficient. To show multiple notifications at one time I recommend the usage of MFXNotificationCenterSystem which uses a MFXNotificationCenter to show the notifications. Or, you could implement you own notification system since the notification API now offers some base classes to build on top.
AbstractMFXNotificationSystem and INotificationSystem specify the base features all notification systems should have, INotification specifies the base features all notifications should have

Skin Package
No notable change aside from new skins for the new controls and minor changes due to classes renamed/moved

Utils Package
 FunctionalStringConverter, a functional alternative to JavaFX's StringConverter
 ReusableScheduledExecutor, a wrapper class to make a ScheduledExecutorService reusable. To stop/restart a ScheduledExecutorService it's needed to keep a reference to the ScheduledFuture task but this often result in boilerplate code, this wrapper fixes this
 EnumStringConverter, an implementation of JavaFX's StringConverter to work with enumerators
 Added a new method to ExecutionUtils
 FXCollectors, a class that contains some new collectors for JavaFX's observable collections
 PredicateUtils, utils for Predicates
 StringUtils, added a new method to convert an elapsed time in seconds to a String
♻️ AnimationUtils, added some new methods to PauseTransitionBuilder and KeyFrames classes
🐛 ExceptionUtils, fixed getStackTraceString method as StringWriters are not reusable

Resources
 Added new CSS files for new controls
♻️ MFXColors.css, added a new color

Signed-off-by: Alessadro Parisi <alessandro.parisi406@gmail.com>
Signed-off-by: palexdev <alessandro.parisi406@gmail.com>
2021-11-02 21:28:07 +01:00

23 lines
1.1 KiB
XML
Executable File

<component name="ProjectRunConfigurationManager">
<configuration default="false" name="MaterialFX [testrun]" type="GradleRunConfiguration" factoryName="Gradle">
<ExternalSystemSettings>
<option name="executionName"/>
<option name="externalProjectPath" value="$PROJECT_DIR$"/>
<option name="externalSystemIdString" value="GRADLE"/>
<option name="scriptParameters" value="-PchooseMain=io.github.palexdev.materialfx.demo.TestDemo"/>
<option name="taskDescriptions">
<list/>
</option>
<option name="taskNames">
<list>
<option value="run"/>
</list>
</option>
<option name="vmOptions" value=""/>
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>true</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<method v="2"/>
</configuration>
</component>