RichTextFX and Flowless looking for new maintainers (and home)

2017-09-11 Thread Tomas Mikula
Hi everyone, since I don't work with JavaFX (or GUI applications, or that matter) anymore, it is hard for me to keep up with the maintenance of my JavaFX projects. I am therefore looking for new maintainers (and possibly new home) of my most active JavaFX project, RichTextFX (

Re: Bootstrapping in Java9

2016-06-21 Thread Tomas Mikula
if > there were enough interest in doing this. > > -- Kevin > > > > Tomas Mikula wrote: > > I think what Tom proposes makes sense even regardless of Java 9. Another > benefit is not requiring a no-arg constructor. > > Regards, > Tomas > > On Tue, Jun 21, 2016 a

Re: Bootstrapping in Java9

2016-06-21 Thread Tomas Mikula
I think what Tom proposes makes sense even regardless of Java 9. Another benefit is not requiring a no-arg constructor. Regards, Tomas On Tue, Jun 21, 2016 at 5:19 AM, Tom Schindl wrote: > Hi, > > I was playing around with Java9 a bit yesterday things worked fine

Re: Looking forward to JavaFX 9!

2016-06-14 Thread Tomas Mikula
Felix, I'm sure the JavaFX engineers are the first ones who wish that Oracle invested more resources in JavaFX. Therefore I'm afraid that the anger is targeted at the wrong crowd here. Tomas On Tue, Jun 14, 2016 at 8:52 AM, Felix Bembrick wrote: > OK, I have learned

Re: Handling Enter key presses on Buttons in JavaFX

2016-06-07 Thread Tomas Mikula
On Tue, Jun 7, 2016 at 7:08 PM, Michael Berry <berry...@gmail.com> wrote: > On 7 June 2016 at 23:57, Tomas Mikula <tomas.mik...@gmail.com> wrote: > >> >> >> On Tue, Jun 7, 2016 at 6:48 PM, Michael Berry <berry...@gmail.com> wrote: >> >

Re: Handling Enter key presses on Buttons in JavaFX

2016-06-07 Thread Tomas Mikula
On Tue, Jun 7, 2016 at 6:48 PM, Michael Berry <berry...@gmail.com> wrote: > On 7 June 2016 at 23:30, Tomas Mikula <tomas.mik...@gmail.com> wrote: > >> >> >> On Tue, Jun 7, 2016 at 6:10 PM, Michael Berry <berry...@gmail.com> wrote: >> >

Re: Handling Enter key presses on Buttons in JavaFX

2016-06-07 Thread Tomas Mikula
On Tue, Jun 7, 2016 at 6:33 PM, Stefan Fuchs wrote: > Hi, > > well, if my dialog would include a TextField, an cancel- and an > ok-button, I would obviously want to have the TextField the initial focus. > > Once the dialog opens I can immediately type some text. > When I'm done,

Re: Handling Enter key presses on Buttons in JavaFX

2016-06-07 Thread Tomas Mikula
On Tue, Jun 7, 2016 at 6:10 PM, Michael Berry <berry...@gmail.com> wrote: > On 7 June 2016 at 23:04, Tomas Mikula <tomas.mik...@gmail.com> wrote: > >> What about forgetting the whole notion of a "default button" and the only >> effect of setting the defaul

Re: Handling Enter key presses on Buttons in JavaFX

2016-06-07 Thread Tomas Mikula
What about forgetting the whole notion of a "default button" and the only effect of setting the default property to true being that the button will start as focused? So I add a question: 3) Would anyone miss the "default button"? Tomas On Tue, Jun 7, 2016 at 5:47 PM, Jonathan Giles

Re: Future of JavaFX

2015-12-01 Thread Tomas Mikula
The review process for external contributions does not even have to be different from the internal review process. There can be a virtual organization on GitHub called "Oracle CLA signatories". After a pull request has been reviewed, all that the OpenJFX committer has to do before merging is to

Re: Future of JavaFX

2015-12-01 Thread Tomas Mikula
The fact that there are other projects with equally bad or worse contribution process does not make the JavaFX's any less bad. Yes, there should be (strict) policies regarding code quality. The rest of the process should be as easy as opening a pull request. Tomas On Tue, Dec 1, 2015 at 2:18 PM,

Re: Future of JavaFX

2015-11-30 Thread Tomas Mikula
The same blog post of Shay says that "Oracle never discontinues products." At least not officially. So there you have that. Given that the biggest achievement of JavaFX 9 will be if old things keep working in JDK 9, I wouldn't expect any new exciting JavaFX developments coming from Oracle. On

Re: Usage of Toolkit firePulse

2015-09-24 Thread Tomas Mikula
I think using Platform.runLater to schedule chunks of work should work. However, dumping all chunks to the event queue at once will likely delay the next pulse and event processing. Using the continuation style, where each chunk schedules the next one, should work IMO. interface Continuation

Re: Usage of Toolkit firePulse

2015-09-24 Thread Tomas Mikula
Hi Michael, attached see your original file updated with the continuation-style solution. Regards, Tomas On Thu, Sep 24, 2015 at 2:44 PM, Dr. Michael Paus wrote: > I have written a little test program to evaluate the various strategies > which have > been discussed here. You

Re: JEP 253: UI control skins and input mapping discussion

2015-09-07 Thread Tomas Mikula
and comment on the current use cases, the presented solutions and the proposed API. https://github.com/TomasMikula/InputMapAPI Thanks, Tomas On Wed, Aug 19, 2015 at 9:09 PM, Tomas Mikula <tomas.mik...@gmail.com> wrote: > > > On Wed, Aug 19, 2015 at 8:15 PM, Jonathan Giles <jonatha

Re: JEP 253 webrev ready for review

2015-09-03 Thread Tomas Mikula
iments/scheduleapp/control/ScrollPaneSkin3.java.sdiff.html > > > http://cr.openjdk.java.net/~kcr/jep-253/webrev.00/apps/experiments/ConferenceScheduleApp/src/main/java/com/javafx/experiments/scheduleapp/control/SearchBox.java.sdiff.html > > -- Jonathan > > On 4/09/2015 2:55 p.m., Tomas Mikula

Re: JEP 253 webrev ready for review

2015-09-03 Thread Tomas Mikula
Hi Jonathan, regarding skins, while I don't see anything immediately wrong with the published API, I have trouble seeing how making skin implementations public is going to be useful. In particular, the JEP states that one of the success metrics is Projects that depend on JavaFX internal APIs, in

Re: JEP 253: UI control skins and input mapping discussion

2015-08-19 Thread Tomas Mikula
I provided my feedback on the input mapping API some 4 months ago here (be warned, it is a *long* discussion) https://bugs.openjdk.java.net/browse/JDK-8091189 I am very disappointed that this API is being pushed forward with all its flaws. It is both overly complex (both conceptually and in terms

Re: JEP 253: UI control skins and input mapping discussion

2015-08-19 Thread Tomas Mikula
On Wed, Aug 19, 2015 at 8:15 PM, Jonathan Giles jonathan.gi...@oracle.com wrote: Tomas, I hope you'll agree that throughout our long discussion on JBS we both improved our implementations based on our discussion. To say that I haven't addressed your issues isn't fair - I worked with you to

Re: JEP 253: UI control skins and input mapping discussion

2015-08-19 Thread Tomas Mikula
the cases that you encountered while porting JavaFX controls. Metrics on the implementation (like the API surface) will be easy to calculate (I can restructure WellBehavedFX to put the non-essential stuff into a separate package). Regards, Tomas -- Jonathan On 20/08/2015 6:49 a.m., Tomas

Re: The Case for JavaFX Emulated LFs (across iOS, Android etc.)

2015-07-29 Thread Tomas Mikula
I share your view of FXML and CSS. I will not shed a single tear if the support for them is dropped tomorrow. My main problem with CSS is that it lacks any sort of static type checking. Tomas On Wed, Jul 29, 2015 at 7:36 AM, cogmission (David Ray) cognitionmiss...@gmail.com wrote: The

Re: Lazy loading of images in scrollpane

2015-07-13 Thread Tomas Mikula
Or use Flowless https://github.com/TomasMikula/Flowless Tomas On Jul 13, 2015 2:36 PM, Tom Schindl tom.schi...@bestsolution.at wrote: Use a ListView ;-) Unfortunately the base class (VirtualFlow is not public API) Tom On 13.07.15 20:19, Christian Krampenschiesser wrote: Hi all, I am

Re: JEP 253: Prepare JavaFX UI Controls CSS APIs for Modularization

2015-05-29 Thread Tomas Mikula
Hi Robert, The Behaviors contain logic at the moment, various functions that are used by the skin or the behavior itself (for example the selectNextTab() function in the TabPaneBehavior). In my view, such code should be refactored to not have any back-reference from skin to behavior. As a

Re: Why are style classes stored in a List instead of a Set?

2015-05-20 Thread Tomas Mikula
Hi Roland, I don't know why it is a List (maybe it is just copying it being a list in the DOM), but it makes sense to me that a style class can be present multiple times (for that matter, a multi-set would work just as well): If I have two places in my code that add and remove the same style

Re: JavaFX JIRA issues moving to JBS

2015-04-16 Thread Tomas Mikula
On Wed, Apr 15, 2015 at 10:54 AM, Richard Bair richard.b...@oracle.com wrote: This is exactly the issue. We know from the last 20 years that in fact we get a huge amount of completely bogus bugs that get filed via bugs.java.com http://bugs.java.com/ (previously bugs.sun.com

Re: Private APIs not usable in Java 9?

2015-04-08 Thread Tomas Mikula
My concern is that issues with existing workarounds were given lower priority. Now many workarounds will disappear, but I'm worried that the priorities will not be reconsidered. I think part of the problem is the fact that Java does not have a good way of marking an API as experimental. Anything

Re: Private APIs not usable in Java 9?

2015-04-08 Thread Tomas Mikula
I do believe in making things right (like killing Unsafe, hiding private APIs). The transition will just be so much pain now that there is so much accumulated private APIs used in production. If there were no accessible private APIs to start with, there would be more pressure to fix bugs and

Re: Private APIs not usable in Java 9?

2015-04-08 Thread Tomas Mikula
Should I rely now on all of those fixes to be backported to 8? Why do you need them to be backported to 8? Just having them fixed in 9 should be fine, no? (keeping the private workarounds for 8) T.

How to tell if KEY_PRESSED comes with a corresponding KEY_TYPED?

2015-04-01 Thread Tomas Mikula
On character input, two events are fired: KEY_PRESSED and KEY_TYPED. When my control is interested in the characters, KEY_TYPED should be handled, because it contains the entered Unicode characters. In that case, however, I would also like to consume the corresponding KEY_PRESSED event, so that it

Re: ProgressBar has significant leaks

2015-03-27 Thread Tomas Mikula
Looks like someone is adding weak listeners to ProgressBarSkin$1 in the first case and to Node$NodeTransformation$2 in the second case, but does not bother removing them, relying on the WeakReference to enable their garbage collection. Well, the listeners themselves get garbage collected, but the

Re: The trouble with Skins

2015-03-24 Thread Tomas Mikula
On Tue, Mar 24, 2015 at 6:47 PM, Tom Eugelink t...@tbee.org wrote: On 22-3-2015 13:53, John Hendrikx wrote: On 22/03/2015 09:59, Tom Eugelink wrote: On 22-3-2015 00:12, John Hendrikx wrote: What I do need however is a way to restore the control to the exact same state it was in before

Re: The trouble with Skins

2015-03-23 Thread Tomas Mikula
Thank you, Richard, for your response. On Mon, Mar 23, 2015 at 2:07 PM, Richard Bair richard.b...@oracle.com wrote: tl;dr; I lean toward keeping the Control API as view-agnostic as possible, but where view details become essential to the operation of the control, then define the Control to

Re: The trouble with Skins

2015-03-23 Thread Tomas Mikula
Sure, it is a workaround that works, but I don't think type cast should be the recommended way to do this (or to do anything). Tomas On Mon, Mar 23, 2015 at 4:15 PM, Tom Eugelink t...@tbee.org wrote: On 23-3-2015 20:30, Tomas Mikula wrote: Control does not know what API is available

Re: The trouble with Skins

2015-03-23 Thread Tomas Mikula
expose information for every skin the control has, without polluting the control's API. Would that work for you? Tom On 23-3-2015 22:03, Tomas Mikula wrote: Sure, it is a workaround that works, but I don't think type cast should be the recommended way to do this (or to do anything). Tomas

Re: The trouble with Skins

2015-03-21 Thread Tomas Mikula
one way to do it. The promise of Skins here is that I could just change the look feel, but unfortunately way too many details of the default look feel leak through in the Control itself. --John Tom On 14-3-2015 04:33, Tomas Mikula wrote: A quick poll: Has anyone ever implemented

Re: The trouble with Skins

2015-03-21 Thread Tomas Mikula
On Sat, Mar 21, 2015 at 2:10 PM, Tom Eugelink t...@tbee.org wrote: I don't understanding how you see that. On 21-3-2015 18:47, Tomas Mikula wrote: So Skins prevent us from getting visual details of the Control (such as scroll position, position of item on screen, ...), because it is Skin

Re: OpenJFX mirror at BitBucket?

2015-03-17 Thread Tomas Mikula
they create their pull request, they can have bitbucket generate the patch file for submission 'the old fashioned way'. -- Jonathan On 18/03/2015 1:03 p.m., Tomas Mikula wrote: Legal issues could be resolved by requiring a signed OCA before each pull request is merged. But anyway, if OpenJDK project

Re: OpenJFX mirror at BitBucket?

2015-03-17 Thread Tomas Mikula
Legal issues could be resolved by requiring a signed OCA before each pull request is merged. But anyway, if OpenJDK project does not accept pull requests, who is going to create the patches? If patches are painful for individual developers, they are going to be super painful for the person who is

Re: The trouble with Skins

2015-03-14 Thread Tomas Mikula
position makes sense to me. Tom On 14-3-2015 04:33, Tomas Mikula wrote: A quick poll: Has anyone ever implemented a custom skin for some of the more complex controls like ListView, TableView, TreeView, TextArea? The problem I have with the Control/Skin architecture is that a Control

The trouble with Skins

2015-03-13 Thread Tomas Mikula
A quick poll: Has anyone ever implemented a custom skin for some of the more complex controls like ListView, TableView, TreeView, TextArea? The problem I have with the Control/Skin architecture is that a Control, being a Node in the scene graph, cannot be a pure model (in the MVC sense) - it is

Re: 8u40 is released / SB

2015-03-05 Thread Tomas Mikula
And then there are GroovyFX and ScalaFX, which embed the declarative UI language in the host language. To me, FXML seems to be just compensation for the lack of expressiveness in Java. Tomas On Thu, Mar 5, 2015 at 9:58 AM, Doug Schaefer dschae...@qnx.com wrote: GUI builders are great for

Re: 8u40 is released

2015-03-04 Thread Tomas Mikula
On Wed, Mar 4, 2015 at 7:50 PM, Mike Hearn m...@plan99.net wrote: WRT 8u60+9, I read that 8u60 is going to be a bug fix only release with no new features at all. I don't know how to read that, as JavaFX does not seem especially buggy to me, 2349 Unresolved Bugs seems buggy to me:

Re: 8u40 is released

2015-03-04 Thread Tomas Mikula
To add fuel to the fire, I have seen issues in the JIRA going from assigned to unassigned, for multiple assignees. Also, Steve is now (back) at IBM: https://ca.linkedin.com/in/stevenorthover. On Wed, Mar 4, 2015 at 5:32 PM, Tobias Bley t...@ultramixer.com wrote: which future should it be? IoT?

Re: Event when CSS is applied

2015-02-18 Thread Tomas Mikula
Hmm, my view is rather reverse to yours: The fact that the implementation of layout is best solved with inheritance is a sign that JavaFX does _not_ aim enough at doing things via composition. Tomas On Wed, Feb 18, 2015 at 4:37 PM, Tom Eugelink t...@tbee.org wrote: On 18-2-2015 21:49, Tomas

Re: Event when CSS is applied

2015-02-18 Thread Tomas Mikula
So back to your original question: Basically I would like to be informed when the styling of a node has been applied or changed. Is there some place that can provide this information? Turns out you don't actually need this information ;) Regards, Tomas On Wed, Feb 18, 2015 at 3:20 PM, Tom

Re: Event when CSS is applied

2015-02-17 Thread Tomas Mikula
dependencies. Some of the other classes will have compilation errors, but the gauge should run. Tom On 17-2-2015 23:15, Tomas Mikula wrote: Maybe if you can post the relevant part of your layoutChildren method so that others can look if they can suggest an improvement. Tomas On Tue, Feb 17

Re: Event when CSS is applied

2015-02-17 Thread Tomas Mikula
Hi Tom, suppose you have such an event and can tell whether CSS of your Text has changed. But is changed CSS the only time you want to re-position the Text? I guess you also need to re-position it when the size of the parent changes. I imagine the logic for determining whether you need to

Re: Event when CSS is applied

2015-02-17 Thread Tomas Mikula
On 17-2-2015 19:05, Tomas Mikula wrote: Hi Tom, suppose you have such an event and can tell whether CSS of your Text has changed. But is changed CSS the only time you want to re-position the Text? I guess you also need to re-position it when the size of the parent changes. I imagine

Re: Event when CSS is applied

2015-02-17 Thread Tomas Mikula
Maybe if you can post the relevant part of your layoutChildren method so that others can look if they can suggest an improvement. Tomas On Tue, Feb 17, 2015 at 5:05 PM, Tom Eugelink t...@tbee.org wrote: On 17-2-2015 20:01, David Grieve wrote: On 2/17/15 1:30 PM, Tom Eugelink wrote: The

Re: Selection Events v. Focus Events - order is broken in JavaFX 8?

2015-02-10 Thread Tomas Mikula
Hi Scott, whether that behavior is a bug in JavaFX 8 or not, why not commit on focus lost *or* selection change? Less assumptions means more robust code. Regards, Tomas On Tue, Feb 10, 2015 at 10:15 AM, Scott Palmer swpal...@gmail.com wrote: I have a custom field (my own formatted field done

Re: How to apply skin?

2015-02-09 Thread Tomas Mikula
On 09.02.2015 00:51, Tomas Mikula wrote: Actually, I want skins to be applied in the whole sub-tree of a node. The node itself may not be a control, but it may contain controls.

How to apply skin?

2015-02-08 Thread Tomas Mikula
Hello list, after adding a node to the scene graph, how do I apply the skin to it, in case it is a Control? Something like an equivalent of applyCss() for skins. My use case is this: I add a node to the scene, and want to know its preferred width. So I call node.applyCss() to make sure CSS is

Re: How to apply skin?

2015-02-08 Thread Tomas Mikula
Actually, I want skins to be applied in the whole sub-tree of a node. The node itself may not be a control, but it may contain controls. On Sun, Feb 8, 2015 at 6:44 PM, Tomas Mikula tomas.mik...@gmail.com wrote: Hello list, after adding a node to the scene graph, how do I apply the skin

Re: Event Filtering

2015-02-07 Thread Tomas Mikula
On Fri, Feb 6, 2015 at 8:45 PM, Scott Palmer swpal...@gmail.com wrote: On Feb 6, 2015, at 8:21 PM, Tomas Mikula tomas.mik...@gmail.com wrote: On Fri, Feb 6, 2015 at 7:33 PM, Scott Palmer swpal...@gmail.com wrote: Is it possible to modify the event in an event filter or otherwise tweak

Re: Event Filtering

2015-02-06 Thread Tomas Mikula
On Fri, Feb 6, 2015 at 7:33 PM, Scott Palmer swpal...@gmail.com wrote: Is it possible to modify the event in an event filter or otherwise tweak the event that is ultimately received by the target? Let's say I have a TextField and I only want to allow typing of capital letters. That is easy

Re: TableView API, no lazy retrieval of visible cell content possible?

2015-01-27 Thread Tomas Mikula
Hi Robert, instead of listening to visibleProperty(), listen to sceneProperty() and cancel loading when scene becomes null. Tomas On Tue, Jan 27, 2015 at 1:16 PM, Robert Krüger krue...@lesspain.de wrote: Hi, either I don't see the forest for the trees or something is missing in the

Re: TableView API, no lazy retrieval of visible cell content possible?

2015-01-27 Thread Tomas Mikula
were visible, it was set to non-null for the first 23 items. Am Dienstag, 27. Januar 2015 schrieb Tomas Mikula : Hi Robert, instead of listening to visibleProperty(), listen to sceneProperty() and cancel loading when scene becomes null. Tomas On Tue, Jan 27, 2015 at 1:16 PM, Robert Krüger

Re: Scrollbars on *View or better VirtualFlow based UI elements

2014-12-15 Thread Tomas Mikula
To add an idea, semi-transparent scrollbars could be shown over the content when the mouse approaches the edge. This would avoid flickering andto save space at the same time. I realize one could not use this if the scrollbars would cover some interactive controls at the edge of the content. Also,

Re: Scrollbars on *View or better VirtualFlow based UI elements

2014-12-15 Thread Tomas Mikula
Hi Werner, On Mon, Dec 15, 2014 at 4:35 PM, Werner Lehmann lehm...@media-interactive.de wrote: Hi Tomas, On 15.12.2014 16:10, Tomas Mikula wrote: To add an idea, semi-transparent scrollbars could be shown over the content when the mouse approaches the edge. This would avoid flickering

Re: Permutation of scene graph children

2014-12-02 Thread Tomas Mikula
Hi Werner, On Tue, Dec 2, 2014 at 11:50 AM, Werner Lehmann lehm...@media-interactive.de wrote: Tom, I know about Collections.swap but it looks like a bad idea to use on scene graph children because it seems to temporarily have a duplicate element in the list and I can't have a node twice in

Re: How do I find out why the render loop is running?

2014-10-03 Thread Tomas Mikula
This is just a tip: until the bug is fixed, you can use a subclass of ProgressBar like the one below to avoid a bunch of hacks. class MyProgressBar extends ProgressBar { private final DoubleProperty myProgress = new SimpleDoubleProperty(); public DoubleProperty myProgressProperty() {

Re: How do I find out why the render loop is running?

2014-10-03 Thread Tomas Mikula
Okay :) So you are using opacityProperty() and not visibleProperty(), so my exact workaround would not work anyway. A nice thing about that kind of workaround though is that you would have the workaround in one place and once you remove it, the compiler points you to all other places you need to

Re: How do I find out why the render loop is running?

2014-10-03 Thread Tomas Mikula
BTW animatedBind is a useful utility. It makes it much easier to make cool animations that adjust as the data model changes. Here it is: https://gist.github.com/mikehearn/f639176566d735b676e7 Something like that should be in the framework really. Nice indeed.

Re: Accelerators - odd behavior

2014-09-27 Thread Tomas Mikula
On Sat, Sep 27, 2014 at 12:02 AM, Kevin Rushforth kevin.rushfo...@oracle.com wrote: Can you add this information to the JIRA? https://javafx-jira.kenai.com/browse/RT-38830 I added it to https://javafx-jira.kenai.com/browse/RT-27602. Tomas Thanks. -- Kevin Tomas Mikula wrote: Anyway

Re: Accelerators - odd behavior

2014-09-26 Thread Tomas Mikula
Hi Scott, On Fri, Sep 26, 2014 at 7:01 PM, Scott Palmer swpal...@gmail.com wrote: Note: With the second combination above I really wanted something that worked for both MINUS and SUBTRACT simultaneously - since they both type the same Character and only one accelerator can be set on a

Re: Accelerators - odd behavior

2014-09-26 Thread Tomas Mikula
Hi Kevin, On Fri, Sep 26, 2014 at 7:16 PM, Kevin Rushforth kevin.rushfo...@oracle.com wrote: It seems to me that this is working as designed. You have created two different KeyCombinations and asked that both fire your runnable. Further, both of the KeyCombinations match your key input since

Re: Accelerators - odd behavior

2014-09-26 Thread Tomas Mikula
The explanation could be that on some systems the KeyCharacterCombination(-).match picks the same key code as the one produced by key press (e.g. MINUS), while on other systems it picks the other one (SUBTRACT). On Fri, Sep 26, 2014 at 7:24 PM, Kevin Rushforth kevin.rushfo...@oracle.com wrote:

Re: Accelerators - odd behavior

2014-09-26 Thread Tomas Mikula
The cause of the problem seems clear to me. This is what I observe on my (Linux) system. Pressing '-' on the main part of the keyboard produces MINUS key code pressed. Pressing '-' on the numeric keypad produces SUBTRACT key code pressed. KeyCharacterCombination(-) matches MINUS pressed, but

Re: Accelerators - odd behavior

2014-09-26 Thread Tomas Mikula
(event.getCode() == MINUS || event.getCode() == SUBTRACT); } }; menuItem.setAccelerator(CtrlMinus); On Fri, Sep 26, 2014 at 8:05 PM, Tomas Mikula tomas.mik...@gmail.com wrote: The cause of the problem seems clear to me. This is what I observe on my (Linux) system

Re: Subclassing behavior in JavaFX Controls

2014-09-17 Thread Tomas Mikula
Hi Pete, work on this is tracked in https://javafx-jira.kenai.com/browse/RT-21598 In terms of the current API, I think the best solution is to add event handlers and/or event filters on the TableView. Regarding your proposed fixes, I have a blog post where I argue that the wiring between the

Re: Subclassing behavior in JavaFX Controls

2014-09-17 Thread Tomas Mikula
be doable without subclassing the skin (or behavior). I'm working on something right now and hope to publish something soon. Best, Tomas Again, any suggestions for workarounds would be appreciated. On Wed, Sep 17, 2014 at 3:02 PM, Tomas Mikula tomas.mik...@gmail.com wrote: Hi Pete

Re: Does JavaFX lack a public Property.getObservable() method?

2014-09-12 Thread Tomas Mikula
Hi Randahl, if on button click you only want to update an external boolean property, bidirectional binding suggested by Martin should be all you need. If the problem is more complex, it might be useful to recognize that your toggle button serves two distinct functions: 1. It reflects the state

CSS: Use none or null?

2014-08-26 Thread Tomas Mikula
Just a quick question: Which one is correct, -fx-fill: none; or -fx-fill: null; ? Thanks, Tomas

Re: CSS: Use none or null?

2014-08-26 Thread Tomas Mikula
Thanks for the quick answer. Tomas On Tue, Aug 26, 2014 at 10:24 PM, David Grieve david.gri...@oracle.com wrote: Either one. On 8/26/14, 4:21 PM, Tomas Mikula wrote: Just a quick question: Which one is correct, -fx-fill: none; or -fx-fill: null; ? Thanks, Tomas

Re: Request to allow anonymous user access to Jira.

2014-08-25 Thread Tomas Mikula
Brian Beck brian.beck@... writes: Hi John: It's a reasonable idea and one that we're actually discussing right now. There are related issues to consider which may take some time to sort out but I would hope to have it all figured out in a month or so. Will keep the list posted. Brian.

Re: Overhead for table columns.

2014-08-14 Thread Tomas Mikula
. Thanks, -- Jonathan On 15/08/2014 10:35 a.m., Tomas Mikula wrote: On Thu, Aug 14, 2014 at 9:01 PM, Sean True sean.t...@gmail.com wrote: We've been looking at very large tables for use in data grid display. Row count scales very nicely indeed, but column count is much more problematic

Re: Calculating the preferred size of a node before layout takes place?

2014-08-04 Thread Tomas Mikula
If you are interested in the preferred height, prefHeight(-1) should get you what you want. If this is before the first layout pass takes place, you will also want to call applyCss() before prefHeight(-1). Note: prefHeight(-1) is what autosize() calls internally, but it does not call applyCss().

Re: How to pause service when it's not visible in TabPane

2014-07-30 Thread Tomas Mikula
What about tab.selectedProperty().addListener((obs, old, selected) - { if(selected) { service.restart(); } else { service.cancel(); } }); ? Best, Tomas On Wed, Jul 30, 2014 at 9:07 AM, Peter Penzov peter.pen...@gmail.com wrote: Hi All,

Re: How to pause service when it's not visible in TabPane

2014-07-30 Thread Tomas Mikula
this? BR, Peter On Wed, Jul 30, 2014 at 1:22 PM, Tomas Mikula tomas.mik...@gmail.com wrote: What about tab.selectedProperty().addListener((obs, old, selected) - { if(selected) { service.restart(); } else { service.cancel

Re: How to pause service when it's not visible in TabPane

2014-07-30 Thread Tomas Mikula
On Thu, Jul 31, 2014 at 12:51 AM, Tomas Mikula tomas.mik...@gmail.com wrote: I'm not sure I understand: you have many service subclasses, each of them associated with a tab? If so, they can take the tab as an argument to the constructor: abstract class TabService extends Service

Re: Mirrored observable collections

2014-07-23 Thread Tomas Mikula
On Wed, Jul 23, 2014 at 1:16 PM, Mike Hearn m...@plan99.net wrote: Thanks Tomas! I'm a big fan of your work and blog. I learned about ReactFX after I started writing my current project, seems like a very useful abstraction indeed, although so far I've found the basic JFX stuff to be nearly

Re: Mirrored observable collections

2014-07-22 Thread Tomas Mikula
Nice! On Tue, Jul 22, 2014 at 6:09 PM, Mike Hearn m...@plan99.net wrote: I have what I imagine is a fairly typical JavaFX application (once it's released I'll post more about it). It has a GUI, some mostly asynchronous state management, and interactions with various servers that can change the

RichTextFX news

2014-06-18 Thread Tomas Mikula
Hi all, I would like to briefly inform about the recent additions in RichTextFX [1]. RichTextFX is a text area that supports styled text. Its original goal is to support code editing. To this end, it now features: 1) Displaying line numbers and, more generally, any graphic in front of each line.

Re: Double skin addition

2014-06-11 Thread Tomas Mikula
Hi Randahl, you should override your Skin's dispose() method that removes the label. Possible reasons I can imagine why JavaFX does not clear the child list itself: 1. The control could have some children on it's own, which shouldn't be deleted when applying a skin. This will be the case for a

Re: monitor mouse events but not capture them

2014-06-10 Thread Tomas Mikula
rendered. I would expect maybe a skin, but I'm not finding it. On 2014-6-9 13:48, Tomas Mikula wrote: Hi Tom, I am in favor of the menu being a PopupWindow, but alternatively, could your canvas be a Group instead of a Pane? The code would look like this: StackPane stack = new

Re: monitor mouse events but not capture them

2014-06-10 Thread Tomas Mikula
at 1:45 PM, Tomas Mikula tomas.mik...@gmail.com wrote: What about using Popup, which is a subclass of PopupWindow? You just need to populate its content popup.getContent().addAll(Node...); and then show it at the right position, relative to any node popup.show(canvas, x, y); Tomas

Re: monitor mouse events but not capture them

2014-06-10 Thread Tomas Mikula
Popup remove the need for a stackpane? Tom On 2014-6-10 15:38, Tomas Mikula wrote: Since talk is cheap, I slightly reworked your code (not using PopupWindow) and it seems to work. CircularPopupMenu: https://github.com/TomasMikula/jfxtras-labs/blob/8.0/src/main/java/jfxtras/labs/scene/menu

Re: monitor mouse events but not capture them

2014-06-10 Thread Tomas Mikula
the mouse exits. Stage does not send the mouse events to addEventFilter. The node.addEventFilter does not solve that and on scene I'm not getting the events either. But I like the way it is going. Thanks! Tom On 2014-6-10 16:26, Tomas Mikula wrote: Here it is, using a Popup: https

Re: monitor mouse events but not capture them

2014-06-09 Thread Tomas Mikula
Hi Tom, I am in favor of the menu being a PopupWindow, but alternatively, could your canvas be a Group instead of a Pane? The code would look like this: StackPane stack = new StackPane(); Group canvas = new Group(); canvas.setManaged(false); stack.setOnMousePressed(e - {

Re: add calculating methods to bind

2014-05-21 Thread Tomas Mikula
Hi Tom, it seems to me that in your custom DoubleBinding implementation `other` is not its dependency, thus it does not react to it's invalidations. Tomas On Wed, May 21, 2014 at 9:25 PM, Tom Eugelink t...@tbee.org wrote: I came up with this: startXProperty().bind(

Re: add calculating methods to bind

2014-05-21 Thread Tomas Mikula
FXCollections.singletonObservableList(value); } }; } On 2014-5-21 21:34, Tomas Mikula wrote: Hi Tom, it seems to me that in your custom DoubleBinding implementation `other` is not its dependency, thus it does not react to it's invalidations. Tomas On Wed, May 21, 2014 at 9:25 PM

Re: add calculating methods to bind

2014-05-21 Thread Tomas Mikula
. EasyBind is at http://www.fxmisc.org/easybind/ Tomas On Wed, May 21, 2014 at 9:47 PM, Tomas Mikula tomas.mik...@gmail.com wrote: Yeah, and you could also eliminate Observable... dependencies from snap's signature, since now you are not using them to invalidate your binding. On Wed, May 21

LiveDirsFX: directory tree model for TreeView that watches the filesystem for changes

2014-04-09 Thread Tomas Mikula
Hello all, I would like to announce that I have published LiveDirsFX [1], which is a combination of a directory watcher, a directory-tree model (usable in TreeView) and a simple asynchronous I/O facility. The added value of this combination, compared to using them all separately, is this: 1. The

Monadic operations on ObservableValue

2014-03-26 Thread Tomas Mikula
EasyBind [1] now adds monadic operations on ObservableValue: http://tomasmikula.github.io/blog/2014/03/26/monadic-operations-on-observablevalue.html [1] http://www.fxmisc.org/easybind/

Re: Ability to decorate ChangeListener

2014-03-24 Thread Tomas Mikula
in detail why I decorate change listener, but this is out of scope of this thread. Regards, Mario Am 24.03.2014 um 14:04 schrieb Tomas Mikula tomas.mik...@gmail.com: Hi Mario, On Mon, Mar 24, 2014 at 8:46 AM, Mario Ivankovits ma...@datenwort.at wrote: Thanks for your answer! One thing, I

Re: Ability to decorate ChangeListener

2014-03-22 Thread Tomas Mikula
The suspicious thing about your solution is that your smart implementation of equals() is not symmetric. In case the observable value is visible only within your project, you could do this: interface Subscription { void unsubscribe(); } class MyObservableValueT implements

Re: Ability to decorate ChangeListener

2014-03-22 Thread Tomas Mikula
, Tomas On Sat, Mar 22, 2014 at 2:07 PM, Tomas Mikula tomas.mik...@gmail.com wrote: The suspicious thing about your solution is that your smart implementation of equals() is not symmetric. In case the observable value is visible only within your project, you could do this: interface

Re: *PropertyBase vs Simple*Property

2014-03-22 Thread Tomas Mikula
On Fri, Mar 21, 2014 at 8:53 PM, Tom Schindl tom.schi...@bestsolution.at wrote: Hi Richard, Coming back to this old thread and now that we are using lamdas all over I guess we could take one more look into that. I've prototyped an initial version by introducing a new internal type named

Re: Ability to decorate ChangeListener

2014-03-22 Thread Tomas Mikula
) { return obj == delegate; // this == obj } @Override public int hashCode() { return delegate.hashCode(); } Regards, Mario Am 22.03.2014 um 14:22 schrieb Tomas Mikula tomas.mik...@gmail.com: A simpler and more universal solution is to also override

Re: Ability to decorate ChangeListener

2014-03-22 Thread Tomas Mikula
22.03.2014 um 15:55 schrieb Tomas Mikula tomas.mik...@gmail.com: Hi Mario, even if your proposal gets accepted, you would still depend on an implementation detail of JavaFX, which is always good to avoid. To sum up, my second proposal compared to your current solution: (+) your equals() stays

  1   2   >