Re: Displaying pixel-perfect images without blur when zooming

2014-08-27 Thread Nico Krebs | www.mensch-und-maschine.de

Thank you both!

i added a vote to the feature request. Could you provide a short sample,
how snapshot(..) can help me zooming without antialiasing?

Nico
> Jim Graham 
> 28. August 2014 01:33
> We have no plans at all for implementing "pixel preview" as a setting
> on Shapes.  You can do that with snapshot if you want.
>
> The Shape.setSmooth() setting (currently stubbed out) is meant to
> control antialiasing, not rendering resolution.
>
> There should be similar bugs for Shape.setSmooth() and the lack of
> interpolation control on GraphicsContext.drawImage() methods as well,
> but I don't recall any Jira issues that deal with "pixel preview"
> capabilities (again, which can be achieved via snapshot)...
>
> ...jim
>
>
> Edu García 
> 28. August 2014 00:36
> Thank you Nico and Jim.
>
> Also Jim, that issue only talks about ImageView IIRC. Are you going to
> implement something similar for shapes? I know it's not the same, but
> I wanted to show pixelated shapes as well (think about zooming in past
> 100% in Illustrator with pixel preview enabled). I don't keep my hopes
> up, but it's free to ask :).
>
>
>
> Jim Graham 
> 28. August 2014 00:01
> On 8/27/14 1:04 AM, Nico Krebs | www.mensch-und-maschine.de wrote:
>> Question 1:
>> I don't know why setSmooth(false) doesnt work. Perhaps am i using it the
>> wrong way? I set it for each ImageView object i got in my list. the
>> scrollpane can`t be "unsmoothed" because of the lack of the setSmooth()
>> method.
>> On the other hand, it could just be a bug of JavaFX.
>
> I repeat:
>
> On 8/26/14 4:35 PM, Jim Graham wrote:
>> We simply haven't implemented this yet:
>>
>> https://javafx-jira.kenai.com/browse/RT-28629
>>
>>  ...jim
>
> setSmooth() is not hooked up to any mechanism at all.  Nothing
> examines this property in the implementation (to be clear, the FX
> object "passes it on" to the NG implementation object which receives
> it with an empty method body).  This is true of ImageView and of
> Shapes...
>
> ...jim
> Nico Krebs | www.mensch-und-maschine.de
> 
> 27. August 2014 10:04
> Hi Edu,
>
> short story: i built a very simple image file format: a zip file,
> containing a meta.xml file and several png images. the xml defines the
> position of each png in the image. this way i have a very basic
> layered image file. I built the first version with Swing in JDK 7 but
> switched to JavaFX8 last week. The swing-version workes and lets me
> see and manipulate single pixels when i zoom.
>
> Question 1:
> I don't know why setSmooth(false) doesnt work. Perhaps am i using it
> the wrong way? I set it for each ImageView object i got in my list.
> the scrollpane can`t be "unsmoothed" because of the lack of the
> setSmooth() method.
> On the other hand, it could just be a bug of JavaFX.
>  
> Question 2:
> i want to load the image with all it`s layers once and then be able to
> zoom so far that i can see the pixels (as you can do in photoshop or
> even paint). for example because i want to modify the image pixel by
> pixel (think of icons, gif animations and other tiny images)
>
> It`s an image manipulation tool for artists, who want to do very basic
> stuff like drawing single pixels, lines and do some effect magic. To
> be able to do precise image manipulation manually it is indispensable
> that you can work with the untouched image data. as you can in gimp,
> paint, photoshop,...
>
> i hope I answered your questions. if not, tell me ;)
>
> Nico
>
> Edu García 
> 26. August 2014 23:13
>
> I'm curious. Why setSmooth doesn't work?
>
> Also, do I really need to create an image in memory just to render
> something showing the pixels?
>

-- 
Nico Krebs

Michelangelostraße 1
01217 Dresden

web: www.mensch-und-maschine.de
mobil:0162 / 85 89 667
mail:nicokrebs@googlemail.com
skype:k-dottus
icq:324 143 104
fax:032 12 - 11 39 77 6
twitter: nico_krebs


8u40 review request: RT-38183 - ManagedResource warnings when switching screen configurations

2014-08-27 Thread Jim Graham

webrev: http://cr.openjdk.java.net/~flar/RT-38183/webrev.00/
Jira: https://javafx-jira.kenai.com/browse/RT-38183

Short and long explanations of the fix are in the Jira comments...

...jim


hg: openjfx/8u-dev/rt: 2 new changesets

2014-08-27 Thread jonathan . giles
Changeset: 0549284f26c9
Author:jgiles
Date:  2014-08-28 09:56 +1200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/0549284f26c9

RT-38456: [TabPane] Tabs can be incorrectly made invisible when rearranged

! 
modules/controls/src/main/java/com/sun/javafx/scene/control/skin/TabPaneSkin.java

Changeset: 5e4ce148e333
Author:jgiles
Date:  2014-08-28 11:16 +1200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/5e4ce148e333

RT-36334: Clean up warnings in control component
Patch #5, focused on charts cleanup.
Contributed-by: Tom Schindl 
Reviewed-by: jgiles

! modules/controls/src/main/java/javafx/scene/chart/AreaChart.java
! modules/controls/src/main/java/javafx/scene/chart/Axis.java
! modules/controls/src/main/java/javafx/scene/chart/BarChart.java
! modules/controls/src/main/java/javafx/scene/chart/CategoryAxis.java
! modules/controls/src/main/java/javafx/scene/chart/Chart.java
! modules/controls/src/main/java/javafx/scene/chart/LineChart.java
! modules/controls/src/main/java/javafx/scene/chart/NumberAxis.java
! modules/controls/src/main/java/javafx/scene/chart/PieChart.java
! modules/controls/src/main/java/javafx/scene/chart/StackedAreaChart.java
! modules/controls/src/main/java/javafx/scene/chart/StackedBarChart.java
! modules/controls/src/main/java/javafx/scene/chart/ValueAxis.java
! modules/controls/src/main/java/javafx/scene/chart/XYChart.java



Re: Displaying pixel-perfect images without blur when zooming

2014-08-27 Thread Jim Graham
We have no plans at all for implementing "pixel preview" as a setting on 
Shapes.  You can do that with snapshot if you want.


The Shape.setSmooth() setting (currently stubbed out) is meant to 
control antialiasing, not rendering resolution.


There should be similar bugs for Shape.setSmooth() and the lack of 
interpolation control on GraphicsContext.drawImage() methods as well, 
but I don't recall any Jira issues that deal with "pixel preview" 
capabilities (again, which can be achieved via snapshot)...


...jim

On 8/27/14 3:36 PM, Edu García wrote:

Thank you Nico and Jim.

Also Jim, that issue only talks about ImageView IIRC. Are you going to
implement something similar for shapes? I know it's not the same, but I
wanted to show pixelated shapes as well (think about zooming in past 100%
in Illustrator with pixel preview enabled). I don't keep my hopes up, but
it's free to ask :).


On Thu, Aug 28, 2014 at 8:01 AM, Jim Graham  wrote:


On 8/27/14 1:04 AM, Nico Krebs | www.mensch-und-maschine.de wrote:


Question 1:
I don't know why setSmooth(false) doesnt work. Perhaps am i using it the
wrong way? I set it for each ImageView object i got in my list. the
scrollpane can`t be "unsmoothed" because of the lack of the setSmooth()
method.
On the other hand, it could just be a bug of JavaFX.



I repeat:


On 8/26/14 4:35 PM, Jim Graham wrote:


We simply haven't implemented this yet:

https://javafx-jira.kenai.com/browse/RT-28629

  ...jim



setSmooth() is not hooked up to any mechanism at all.  Nothing examines
this property in the implementation (to be clear, the FX object "passes it
on" to the NG implementation object which receives it with an empty method
body).  This is true of ImageView and of Shapes...

 ...jim



Re: Displaying pixel-perfect images without blur when zooming

2014-08-27 Thread Edu García
Thank you Nico and Jim.

Also Jim, that issue only talks about ImageView IIRC. Are you going to
implement something similar for shapes? I know it's not the same, but I
wanted to show pixelated shapes as well (think about zooming in past 100%
in Illustrator with pixel preview enabled). I don't keep my hopes up, but
it's free to ask :).


On Thu, Aug 28, 2014 at 8:01 AM, Jim Graham  wrote:

> On 8/27/14 1:04 AM, Nico Krebs | www.mensch-und-maschine.de wrote:
>
>> Question 1:
>> I don't know why setSmooth(false) doesnt work. Perhaps am i using it the
>> wrong way? I set it for each ImageView object i got in my list. the
>> scrollpane can`t be "unsmoothed" because of the lack of the setSmooth()
>> method.
>> On the other hand, it could just be a bug of JavaFX.
>>
>
> I repeat:
>
>
> On 8/26/14 4:35 PM, Jim Graham wrote:
>
>> We simply haven't implemented this yet:
>>
>> https://javafx-jira.kenai.com/browse/RT-28629
>>
>>  ...jim
>>
>
> setSmooth() is not hooked up to any mechanism at all.  Nothing examines
> this property in the implementation (to be clear, the FX object "passes it
> on" to the NG implementation object which receives it with an empty method
> body).  This is true of ImageView and of Shapes...
>
> ...jim
>


hg: openjfx/8u-dev/rt: Fix RT-23822: Support FontSmoothingType in Canvas fillText()

2014-08-27 Thread james . graham
Changeset: 20ee873c49f1
Author:flar 
Date:  2014-08-27 15:24 -0700
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/20ee873c49f1

Fix RT-23822: Support FontSmoothingType in Canvas fillText()
Reviewed by: felipe, kcr

! modules/graphics/src/main/java/com/sun/javafx/sg/prism/NGCanvas.java
! modules/graphics/src/main/java/javafx/scene/canvas/GraphicsContext.java
! modules/graphics/src/test/java/javafx/scene/canvas/CanvasTest.java



Re: Displaying pixel-perfect images without blur when zooming

2014-08-27 Thread Jim Graham

On 8/27/14 1:04 AM, Nico Krebs | www.mensch-und-maschine.de wrote:

Question 1:
I don't know why setSmooth(false) doesnt work. Perhaps am i using it the
wrong way? I set it for each ImageView object i got in my list. the
scrollpane can`t be "unsmoothed" because of the lack of the setSmooth()
method.
On the other hand, it could just be a bug of JavaFX.


I repeat:

On 8/26/14 4:35 PM, Jim Graham wrote:

We simply haven't implemented this yet:

https://javafx-jira.kenai.com/browse/RT-28629

 ...jim


setSmooth() is not hooked up to any mechanism at all.  Nothing examines 
this property in the implementation (to be clear, the FX object "passes 
it on" to the NG implementation object which receives it with an empty 
method body).  This is true of ImageView and of Shapes...


...jim


hg: openjfx/8u-dev/rt: RT-38230: Document the image file formats supported by javafx.scene.image.Image

2014-08-27 Thread vadim . pakhnushev
Changeset: 99757c39bff9
Author:vadim
Date:  2014-08-27 22:20 +0400
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/99757c39bff9

RT-38230: Document the image file formats supported by javafx.scene.image.Image
Reviewed-by: fheidric

! modules/graphics/src/main/java/javafx/scene/image/Image.java



hg: openjfx/8u-dev/rt: [DOCS-ONLY] RT-38453: [CSS] errors in cssref html causing issues in various browsers

2014-08-27 Thread david . grieve
Changeset: 9ae7393e72e9
Author:David Grieve
Date:  2014-08-27 13:51 -0400
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/9ae7393e72e9

[DOCS-ONLY] RT-38453: [CSS] errors in cssref html causing issues in various 
browsers

! modules/graphics/src/main/docs/javafx/scene/doc-files/cssref.html



Change in default font engine for embedded

2014-08-27 Thread David Hill


As part of https://javafx-jira.kenai.com/browse/RT-37585

I just commited a change that will have embedded using the "native" font engine 
(freetype/pango) instead of the T2K based engine we were using before.

Please keep an eye out for font based oddities :-)

If you wish to use/force the T2K path use: -Dprism.text=t2k

To learn a lot about fonts, check out:
   https://wiki.openjdk.java.net/display/OpenJFX/Font+Setup
or add: -Dprism.debugfonts=true


--
David Hill
Java Embedded Development

"A man's feet should be planted in his country, but his eyes should survey the 
world."
-- George Santayana (1863 - 1952)



Possible new project: OpenJDK LaF

2014-08-27 Thread Mario Torre
Hi all,

First of all, sorry for cross posting... I would like to kindly ask to
direct all the replies to this thread to the "discuss" alias if
possible.

Is a bit of time I'm playing with the idea of implementing a proper GTK3
look and feel for OpenJDK, something to make the jdk look a bit more
modern and also take it as an opportunity to solve some of the issues
the GTK2 laf has, including some related bugs like this:

http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=729

I mentored a Summer of Code project last year where we produced a more
or less working and complete implementation. It was a student project
and the efforts to make it well abstracted and tested are really as
close as making a new implementation, however it was great to show that
we could have a basic and functional implementation in less than a month
of work, the new GTK3 library looks way nicer!

At the same time, since Swing will be [very] gradually replaced by
JavaFX, I think it would be awesome to have a JavaFX based look and
feel, something I started to play with last year as well but then put on
hold because of tons of other things to do:

https://neugens.wordpress.com/2013/07/21/javafx-look-and-feel-for-swing/

Recently I was convinced though that we should move forward with the
Java laf: Swing has still lots to say, and JavaFX is not yet as
integrated with OpenJDK as it should be (especially in Linux
distribution, although is more popular within the OSX and Windows
communities), but before I move forward (and get to propose a JEP for
this) I would like some early feedback and gather some ideas/potential
interest :)

Another possible implementation would be based on QT, which is even
cross platform by itself.

So to recap, what are your feelings about an official OpenJDK look and
feel collection?

Cheers,
Mario




hg: openjfx/8u-dev/rt: RT-38431: Use consistent ACC in callback

2014-08-27 Thread kevin . rushforth
Changeset: 08fef750e7dd
Author:kcr
Date:  2014-08-27 08:40 -0700
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/08fef750e7dd

RT-38431: Use consistent ACC in callback
Reviewed-by: anthony, msladecek

! 
modules/graphics/src/main/java/com/sun/javafx/tk/quantum/GlassWindowEventHandler.java



hg: openjfx/8u-dev/rt: (RT-37585) Embedded - enable freetype/pango path by default

2014-08-27 Thread david . hill
Changeset: eedae2717d3c
Author:ddhill
Date:  2014-08-27 11:38 -0400
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/eedae2717d3c

(RT-37585) Embedded - enable freetype/pango path by default
Reviewed-by: kselle, fheidric

! modules/graphics/src/main/java/com/sun/javafx/font/PrismFontFactory.java



hg: openjfx/8u-dev/rt: [SCENEBUILDER] DeleteObjectJob now uses RemoveObjectJob.

2014-08-27 Thread eric . le . ponner
Changeset: a5c10d255438
Author:eric.le.pon...@oracle.com
Date:  2014-08-27 17:38 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/a5c10d255438

[SCENEBUILDER] DeleteObjectJob now uses RemoveObjectJob.
This fixes a latent bug and will ease work of references (DTL-6774).

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/DeleteObjectJob.java
+ 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/v2/RemoveCollectionItemJob.java
+ 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/v2/RemoveNodeJob.java
+ 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/v2/RemoveObjectJob.java



8u40 API Review: RT-37767 Provide friendly APIs to access User JVM Preferences

2014-08-27 Thread Danno Ferrin
webrev: http://cr.openjdk.java.net/~shemnon/RT-37767/webrev.0/
Jira: https://javafx-jira.kenai.com/browse/RT-37767

This is the proposed API to allow the friendly access tot eh User JVM Options.

Here are some snippets from demo code on my machine showing how they may 
interact:

// get the helper instance
UserJvmOptions ujo = UserJvmOptions.getUserJVMDefaults();
Map userOptions = ujo.getUserJVMOptions();

// print out all the options currently set
for (Map.Entry  entry : userOptions.entrySet()) {
System.out.println("key:" + entry.getKey() + " value:" + 
entry.getValue());
}

// if we haven't marked the first run, do so now
if (!userOptions.containsKey("-DfirstRunMs")) {
userOptions.put("-DfirstRunMs", 
Long.toString(System.currentTimeMillis()));
}

// add the last run
userOptions.put("-DlastRunMs", 
Long.toString(System.currentTimeMillis()));

// save the changes
ujo.setUserJVMOptions(userOptions);



// create a table row with Key, Current Value, and Default Value
DefaultTableModel model = new DefaultTableModel();
model.addColumn("Key");
model.addColumn("Effective");
model.addColumn("Default");

Map defaults = ujo.getUserJVMOptionDefaults();
for (Map.Entry  entry : userOptions.entrySet()) {
// get the default, it may be null
String def = defaults.get(entry.getKey());

model.addRow(new Object[] {entry.getKey(), entry.getValue(), def == 
null ? "" : def});
}



hg: openjfx/8u-dev/rt: [SCENEBUILDER] metadata for textFormatter property of TextField

2014-08-27 Thread yves . joan
Changeset: 3840e47bc78c
Author:yjoan
Date:  2014-08-27 17:32 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/3840e47bc78c

[SCENEBUILDER] metadata for textFormatter property of TextField

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/metadata/Metadata.java



GridPane percent width.

2014-08-27 Thread Robert Fisher
Hi all,
 
I have a grid pane with 2 columns, with one child in each. The columns are each 
assigned 50% width.
 
I find that for some sizes (maybe when the total width is an odd number of 
pixels), the right-most column of pixels of the right child are cut off and not 
rendered. Is this intentional? Or a known bug?
 
Cheers,
Rob


[8u40] Review request for RT-38338: [Glass, Mac] While a stage is in fullscreen mode you cannot open another stage on top of the fullscreen stage

2014-08-27 Thread Anthony Petrov

Hi Steve, Felipe,

Please review the fix: https://javafx-jira.kenai.com/browse/RT-38338

--
best regards,
Anthony


hg: openjfx/8u/rt: Added tag 8u40-b03 for changeset 0b9677f61b09

2014-08-27 Thread hang . vo
Changeset: a2dda1afa7b5
Author:hudson
Date:  2014-08-27 07:55 -0700
URL:   http://hg.openjdk.java.net/openjfx/8u/rt/rev/a2dda1afa7b5

Added tag 8u40-b03 for changeset 0b9677f61b09

! .hgtags



hg: openjfx/8u-dev/rt: [SCENEBUILDER] Going on fixing DTL-6783: RemovePropertyValueJob now removes the property

2014-08-27 Thread eric . le . ponner
Changeset: 96fb6a5bd1fc
Author:eric.le.pon...@oracle.com
Date:  2014-08-27 16:27 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/96fb6a5bd1fc

[SCENEBUILDER] Going on fixing DTL-6783: RemovePropertyValueJob now removes the 
property
after removing the last value. This enables to simplify DeleteObjectJob.

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/DeleteObjectJob.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/v2/RemovePropertyJob.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/v2/RemovePropertyValueJob.java



hg: openjfx/8u-dev/rt: [SCENEBUILDER] Fix for DTL-6833: Shape.strokeDashArray property should be hidden

2014-08-27 Thread jerome . cambon
Changeset: a707fa9c9186
Author:Jerome Cambon
Date:  2014-08-27 15:33 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/a707fa9c9186

[SCENEBUILDER] Fix for DTL-6833: Shape.strokeDashArray property should be hidden

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/metadata/Metadata.java



MultiTouch Test Application

2014-08-27 Thread Jörg Wille
Hi Lisa,
how is the progress on open-sourcing
rt-closed/toys/HelloWorld/src/helloworld/HelloMultitouch.java

Thanks,
Joerg


hg: openjfx/8u-dev/rt: 3 new changesets

2014-08-27 Thread sandra . lions-piron
Changeset: 60236c9b4be4
Author:slions
Date:  2014-08-27 12:14 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/60236c9b4be4

[SCENEBUILDER] Going on fixing DTL-6783: Rationalize job implementation between 
Hierarchy and Content Panels
=> Adapt Insert As Accessory and Insert As Subcomponent job

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/InsertAsAccessoryJob.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/InsertAsSubComponentJob.java

Changeset: 850d81afb10f
Author:slions
Date:  2014-08-27 12:15 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/850d81afb10f

Remove no more needed UpdateSelectionJob

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/IncludeFileJob.java

Changeset: 9627f50ee3fe
Author:slions
Date:  2014-08-27 12:22 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/9627f50ee3fe

make BatchSelectionJob extends BatchDocumentJob

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/BatchDocumentJob.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/BatchSelectionJob.java



[8u40] Review request for RT-38230: Document the image file formats supported by javafx.scene.image.Image

2014-08-27 Thread Vadim Pakhnushev

Hi Jim,

Please review the fix:
https://javafx-jira.kenai.com/browse/RT-38230
http://cr.openjdk.java.net/~vadim/RT-38230/webrev.00/

Thanks,
Vadim


hg: openjfx/8u-dev/rt: [SCENEBUILDER] Removed Warnings detected by Eclipse

2014-08-27 Thread jerome . cambon
Changeset: 427fa460c27c
Author:Jerome Cambon
Date:  2014-08-27 11:37 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/427fa460c27c

[SCENEBUILDER] Removed Warnings detected by Eclipse

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/wrap/WrapInSplitPaneJob.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/gridpane/GridPanePring.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/handles/AbstractCurveHandles.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/handles/AbstractNodeHandles.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/outline/NodeOutline.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/pring/NodePring.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/pring/TabPring.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/pring/TableColumnPring.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/pring/TreeTableColumnPring.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/tring/AbstractNodeTring.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/tring/TabTring.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/tring/TableColumnTring.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/tring/TreeTableColumnTring.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/content/mode/HitNodeChrome.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssValueConverter.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/InspectorPanelController.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/AnchorPaneConstraintsEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/ControllerClassEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/CursorEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DividerPositionsEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DoubleEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/EditorUtils.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/EventHandlerEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/FxIdEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/GenericEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/I18nStringEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/ImageEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/InlineListEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/InsetsEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/IntegerEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/Point3DEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/RotateEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StringEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StyleClassEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StyleEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StylesheetEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/TextAlignmentEditor.java
! 
apps/scenebuilder/SceneBuilderKit/src/co

Re: Displaying pixel-perfect images without blur when zooming

2014-08-27 Thread Nico Krebs | www.mensch-und-maschine.de
fyi:
i just checked if the scrollpane is smoothing the images, but it`s not.
removing the scrollpane keeps images smoothed.

> Edu García 
> 26. August 2014 23:13
>
> I'm curious. Why setSmooth doesn't work?
>
> Also, do I really need to create an image in memory just to render
> something showing the pixels?
>
> Nico Krebs | www.mensch-und-maschine.de
> 
> 26. August 2014 19:31
> Thanx for that quick response!
>
> It is the right direction, but doing this for one image is not enough.
> when having multiple images, the distances between them must be
> scaled, too.
>
> I will extend your example to scale all nodes and their positions,
> too. I try it tomorrow and post the result here.
>
> Nico
>
>
> Felipe Heidrich 
> 26. August 2014 19:20
>
> Hi Nico,
>
> Is this what you looking for:
>
> Image image - the image to scale up
> int width = (int)image.getWidth();
> int height = (int)image.getHeight();
>
> int z = (int)getZoom();  // 2, 4, 8, 16 (I only tested for powers of two)
> IntBuffer src = IntBuffer.allocate(width * height);
> WritablePixelFormat pf =
> PixelFormat.getIntArgbInstance();
> image.getPixelReader().getPixels(0, 0, width, height, pf, src,
> width);
> int newWidth = width * z;
> int newHeight = height * z;
> int[] dst = new int[newWidth * newHeight];
> int index = 0;
> for (int y = 0; y < height; y++) {
> index = y * newWidth * z;
> for (int x = 0; x < width; x++) {
> int pixel = src.get();
> for (int i = 0; i < z; i++) {
>  for (int j = 0; j < z; j++) {
> dst[index + i + (newWidth * j)] = pixel;
>  }
>  }
>  index += z;
> }
>  }
>  WritableImage bigImage = new WritableImage(newWidth, newHeight);
>  bigImage.getPixelWriter().setPixels(0, 0, newWidth,
> newHeight, pf, dst, 0, newWidth);
>  preview.setImage(bigImage);
>  preview.setFitWidth(newWidth);
>
>
> preview is ImageView where the scale up image is displayed.
>
>
> Felipe
>
>
>
> Nico Krebs | www.mensch-und-maschine.de
> 
> 26. August 2014 19:00
> Hi there,
>
> i want to display multiple images (layers) inside a scene and want to be
> able to zoom without having "blurry" images as you can see in the images
> in the attachment (on the left you can see very big scaled pixels as i
> need it and on the right is the "blurry" JavaFX-Result on which i cannot
> identify single pixels.
>
> i used the zoom pane example from
> https://stackoverflow.com/questions/16680295/javafx-correct-scaling
>
> this is how i initialize my scene:
>
> ArrayList listOfImageViews = getImageViews();
> //imageviews are created from bufferedimages with:
> SwingFXUtils.toFXImage(image, null)
> final Group layerGroup = new Group(listOfImageViews);
> this.stackPane = new StackPane();
> stackPane.getChildren().add(layerGroup);
> scene = new Scene(stackPane);
> this.stackPane.getChildren().add(this.scrollPane);
>
> this.stackPane.getChildren().add(scrollPane.createZoomPane(listOfImageViews
> ));
> this.setScene(scene);
>
> and this is how zooming is done:
>
> ...//calculate scalefactor from scrolling
> ...
> layerGroup .setScaleX(layerGroup .getScaleX() * scaleFactor);
> layerGroup .setScaleY(layerGroup .getScaleY() * scaleFactor);
> ...
>
> when i zoom in so that i theoreticallly could see single pixels, all i
> see is a blurry area. (see examples)
> i know already that that`s JavaFX default behaviour and even if i set
> setSmooth(false), the antialiasing or precision errors or whatever is
> causing this, persists.
>
> is there perhaps another way? i am even willing to write my own
> implementation of Imageview if it would help.
>
> Can anybody please help me out?
>
> if you need more details, please ask :)
>
> thanks in advance and greetz,
> Nico
>

-- 
Nico Krebs

Michelangelostraße 1
01217 Dresden

web: www.mensch-und-maschine.de
mobil:0162 / 85 89 667
mail:nicokrebs@googlemail.com
skype:k-dottus
icq:324 143 104
fax:032 12 - 11 39 77 6
twitter: nico_krebs


Re: Displaying pixel-perfect images without blur when zooming

2014-08-27 Thread Nico Krebs | www.mensch-und-maschine.de
i just found this StackOverflow-post:

https://stackoverflow.com/questions/16089304/javafx-imageview-without-any-smoothing

the author also thinks that this is a bug. the proposed solutions seems
to be a hack and to be slow(guessing). imagine an image with around 1000
layers (which already happened when some user uploaded his whole family
photo collection to make a collage and remove some "red eyes" - this was
handled perfectly by swing)

i really would like to be able to call setSmooth(false) and then could
simply use the Group scaling methods for zooming i already have and
which is pretty fast.

greetz,
Nico
> Nico Krebs | www.mensch-und-maschine.de
> 
> 27. August 2014 10:04
> Hi Edu,
>
> short story: i built a very simple image file format: a zip file,
> containing a meta.xml file and several png images. the xml defines the
> position of each png in the image. this way i have a very basic
> layered image file. I built the first version with Swing in JDK 7 but
> switched to JavaFX8 last week. The swing-version workes and lets me
> see and manipulate single pixels when i zoom.
>
> Question 1:
> I don't know why setSmooth(false) doesnt work. Perhaps am i using it
> the wrong way? I set it for each ImageView object i got in my list.
> the scrollpane can`t be "unsmoothed" because of the lack of the
> setSmooth() method.
> On the other hand, it could just be a bug of JavaFX.
>  
> Question 2:
> i want to load the image with all it`s layers once and then be able to
> zoom so far that i can see the pixels (as you can do in photoshop or
> even paint). for example because i want to modify the image pixel by
> pixel (think of icons, gif animations and other tiny images)
>
> It`s an image manipulation tool for artists, who want to do very basic
> stuff like drawing single pixels, lines and do some effect magic. To
> be able to do precise image manipulation manually it is indispensable
> that you can work with the untouched image data. as you can in gimp,
> paint, photoshop,...
>
> i hope I answered your questions. if not, tell me ;)
>
> Nico
>
> Edu García 
> 26. August 2014 23:13
>
> I'm curious. Why setSmooth doesn't work?
>
> Also, do I really need to create an image in memory just to render
> something showing the pixels?
>
> Nico Krebs | www.mensch-und-maschine.de
> 
> 26. August 2014 19:31
> Thanx for that quick response!
>
> It is the right direction, but doing this for one image is not enough.
> when having multiple images, the distances between them must be
> scaled, too.
>
> I will extend your example to scale all nodes and their positions,
> too. I try it tomorrow and post the result here.
>
> Nico
>
>
> Felipe Heidrich 
> 26. August 2014 19:20
>
> Hi Nico,
>
> Is this what you looking for:
>
> Image image - the image to scale up
> int width = (int)image.getWidth();
> int height = (int)image.getHeight();
>
> int z = (int)getZoom();  // 2, 4, 8, 16 (I only tested for powers of two)
> IntBuffer src = IntBuffer.allocate(width * height);
> WritablePixelFormat pf =
> PixelFormat.getIntArgbInstance();
> image.getPixelReader().getPixels(0, 0, width, height, pf, src,
> width);
> int newWidth = width * z;
> int newHeight = height * z;
> int[] dst = new int[newWidth * newHeight];
> int index = 0;
> for (int y = 0; y < height; y++) {
> index = y * newWidth * z;
> for (int x = 0; x < width; x++) {
> int pixel = src.get();
> for (int i = 0; i < z; i++) {
>  for (int j = 0; j < z; j++) {
> dst[index + i + (newWidth * j)] = pixel;
>  }
>  }
>  index += z;
> }
>  }
>  WritableImage bigImage = new WritableImage(newWidth, newHeight);
>  bigImage.getPixelWriter().setPixels(0, 0, newWidth,
> newHeight, pf, dst, 0, newWidth);
>  preview.setImage(bigImage);
>  preview.setFitWidth(newWidth);
>
>
> preview is ImageView where the scale up image is displayed.
>
>
> Felipe
>
>
>
> Nico Krebs | www.mensch-und-maschine.de
> 
> 26. August 2014 19:00
> Hi there,
>
> i want to display multiple images (layers) inside a scene and want to be
> able to zoom without having "blurry" images as you can see in the images
> in the attachment (on the left you can see very big scaled pixels as i
> need it and on the right is the "blurry" JavaFX-Result on which i cannot
> identify single pixels.
>
> i used the zoom pane example from
> https://stackoverflow.com/questions/16680295/javafx-correct-scaling
>
> this is how i initialize my scene:
>
> ArrayList listOfImageViews = getImageViews();
> //imageviews are created from bufferedimages with:
> SwingFXUtils.toFXImage(image, null)
> final Group layerGro

hg: openjfx/8u-dev/rt: 8 new changesets

2014-08-27 Thread sandra . lions-piron
Changeset: d83e0326080c
Author:slions
Date:  2014-08-27 10:06 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/d83e0326080c

[SCENEBUILDER] Going on fixing DTL-6783: Rationalize job implementation between 
Hierarchy and Content Panels
=> Adapt Import File job

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/ImportFileJob.java

Changeset: b12c2b162ef1
Author:slions
Date:  2014-08-27 10:07 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/b12c2b162ef1

[SCENEBUILDER] Going on fixing DTL-6783: Rationalize job implementation between 
Hierarchy and Content Panels
=> Adapt Include File job

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/IncludeFileJob.java

Changeset: 586ea960003a
Author:slions
Date:  2014-08-27 10:08 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/586ea960003a

[SCENEBUILDER] Going on fixing DTL-6783: Rationalize job implementation between 
Hierarchy and Content Panels
=> Adapt Paste Into job

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/PasteIntoJob.java

Changeset: a710bc740323
Author:slions
Date:  2014-08-27 10:09 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/a710bc740323

[SCENEBUILDER] Going on fixing DTL-6783: Rationalize job implementation between 
Hierarchy and Content Panels
=> Adapt Prune Properties job

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/PrunePropertiesJob.java

Changeset: cc69167a0432
Author:slions
Date:  2014-08-27 10:10 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/cc69167a0432

[SCENEBUILDER] Going on fixing DTL-6783: Rationalize job implementation between 
Hierarchy and Content Panels
=> Adapt Relocate Selection job

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/RelocateSelectionJob.java

Changeset: 07614617c325
Author:slions
Date:  2014-08-27 10:11 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/07614617c325

[SCENEBUILDER] Going on fixing DTL-6783: Rationalize job implementation between 
Hierarchy and Content Panels
=> Adapt Trim Selection job

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/TrimSelectionJob.java

Changeset: 615b8ce4f50a
Author:slions
Date:  2014-08-27 10:12 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/615b8ce4f50a

[SCENEBUILDER] Going on fixing DTL-6783: Rationalize job implementation between 
Hierarchy and Content Panels
=> Adapt Wrap In job

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/wrap/AbstractWrapInJob.java

Changeset: b941d80ae591
Author:slions
Date:  2014-08-27 10:12 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/b941d80ae591

[SCENEBUILDER] Going on fixing DTL-6783: Rationalize job implementation between 
Hierarchy and Content Panels
=> Adapt Unwrap job

! 
apps/scenebuilder/SceneBuilderKit/src/com/oracle/javafx/scenebuilder/kit/editor/job/wrap/UnwrapJob.java



Re: Displaying pixel-perfect images without blur when zooming

2014-08-27 Thread Nico Krebs | www.mensch-und-maschine.de
Hi Edu,

short story: i built a very simple image file format: a zip file,
containing a meta.xml file and several png images. the xml defines the
position of each png in the image. this way i have a very basic layered
image file. I built the first version with Swing in JDK 7 but switched
to JavaFX8 last week. The swing-version workes and lets me see and
manipulate single pixels when i zoom.

Question 1:
I don't know why setSmooth(false) doesnt work. Perhaps am i using it the
wrong way? I set it for each ImageView object i got in my list. the
scrollpane can`t be "unsmoothed" because of the lack of the setSmooth()
method.
On the other hand, it could just be a bug of JavaFX.
 
Question 2:
i want to load the image with all it`s layers once and then be able to
zoom so far that i can see the pixels (as you can do in photoshop or
even paint). for example because i want to modify the image pixel by
pixel (think of icons, gif animations and other tiny images)

It`s an image manipulation tool for artists, who want to do very basic
stuff like drawing single pixels, lines and do some effect magic. To be
able to do precise image manipulation manually it is indispensable that
you can work with the untouched image data. as you can in gimp, paint,
photoshop,...

i hope I answered your questions. if not, tell me ;)

Nico
> Edu García 
> 26. August 2014 23:13
>
> I'm curious. Why setSmooth doesn't work?
>
> Also, do I really need to create an image in memory just to render
> something showing the pixels?
>
> Felipe Heidrich 
> 26. August 2014 19:20
>
> Hi Nico,
>
> Is this what you looking for:
>
> Image image - the image to scale up
> int width = (int)image.getWidth();
> int height = (int)image.getHeight();
>
> int z = (int)getZoom();  // 2, 4, 8, 16 (I only tested for powers of two)
> IntBuffer src = IntBuffer.allocate(width * height);
> WritablePixelFormat pf =
> PixelFormat.getIntArgbInstance();
> image.getPixelReader().getPixels(0, 0, width, height, pf, src,
> width);
> int newWidth = width * z;
> int newHeight = height * z;
> int[] dst = new int[newWidth * newHeight];
> int index = 0;
> for (int y = 0; y < height; y++) {
> index = y * newWidth * z;
> for (int x = 0; x < width; x++) {
> int pixel = src.get();
> for (int i = 0; i < z; i++) {
>  for (int j = 0; j < z; j++) {
> dst[index + i + (newWidth * j)] = pixel;
>  }
>  }
>  index += z;
> }
>  }
>  WritableImage bigImage = new WritableImage(newWidth, newHeight);
>  bigImage.getPixelWriter().setPixels(0, 0, newWidth,
> newHeight, pf, dst, 0, newWidth);
>  preview.setImage(bigImage);
>  preview.setFitWidth(newWidth);
>
>
> preview is ImageView where the scale up image is displayed.
>
>
> Felipe
>
>
>
> Nico Krebs | www.mensch-und-maschine.de
> 
> 26. August 2014 19:00
> Hi there,
>
> i want to display multiple images (layers) inside a scene and want to be
> able to zoom without having "blurry" images as you can see in the images
> in the attachment (on the left you can see very big scaled pixels as i
> need it and on the right is the "blurry" JavaFX-Result on which i cannot
> identify single pixels.
>
> i used the zoom pane example from
> https://stackoverflow.com/questions/16680295/javafx-correct-scaling
>
> this is how i initialize my scene:
>
> ArrayList listOfImageViews = getImageViews();
> //imageviews are created from bufferedimages with:
> SwingFXUtils.toFXImage(image, null)
> final Group layerGroup = new Group(listOfImageViews);
> this.stackPane = new StackPane();
> stackPane.getChildren().add(layerGroup);
> scene = new Scene(stackPane);
> this.stackPane.getChildren().add(this.scrollPane);
>
> this.stackPane.getChildren().add(scrollPane.createZoomPane(listOfImageViews
> ));
> this.setScene(scene);
>
> and this is how zooming is done:
>
> ...//calculate scalefactor from scrolling
> ...
> layerGroup .setScaleX(layerGroup .getScaleX() * scaleFactor);
> layerGroup .setScaleY(layerGroup .getScaleY() * scaleFactor);
> ...
>
> when i zoom in so that i theoreticallly could see single pixels, all i
> see is a blurry area. (see examples)
> i know already that that`s JavaFX default behaviour and even if i set
> setSmooth(false), the antialiasing or precision errors or whatever is
> causing this, persists.
>
> is there perhaps another way? i am even willing to write my own
> implementation of Imageview if it would help.
>
> Can anybody please help me out?
>
> if you need more details, please ask :)
>
> thanks in advance and greetz,
> Nico
>

-- 
Nico Krebs

Michelangelostraße 1
01217 Dresden

web: www.mensch-und-maschine.de
mobil:0162 / 85 89 667
mail:nicokrebs@googlemail.com
skype

hg: openjfx/8u-dev/rt: [SCENEBUILDER] Update version

2014-08-27 Thread yves . joan
Changeset: 7e3f564c5a26
Author:yjoan
Date:  2014-08-27 09:44 +0200
URL:   http://hg.openjdk.java.net/openjfx/8u-dev/rt/rev/7e3f564c5a26

[SCENEBUILDER] Update version

! 
apps/scenebuilder/SceneBuilderApp/src/com/oracle/javafx/scenebuilder/app/about/AboutWindowController.java
! 
apps/scenebuilder/SceneBuilderApp/src/com/oracle/javafx/scenebuilder/app/about/about-header.png