X-Rite i1Profiler has a fatal flaw

I have been using ProfilerMaker 5, coupled with an i1Pro  spectrophotometer, for several years. Today I received an email from XRite  announcing the availability of their new i1Publish package, which includes the  i1Profiler software. It seemed like a good deal, $500 to upgrade, and it's  obvious there is no further work being done on ProfileMaker.
I downloaded  the software, usable in a demo mode, and went through the workflow description.  There are some interesting new options for printer profiling, BUT there is no  provision for OBC (optical brightener correction) using an i1Pro, it's only  available if one has an i1Isis chart reader.
Most papers, particularly  glossy/semi-gloss, require OBC since they contain optical brighteners. It makes  no sense for XRite to issue a new profiling software version that doesn't  include this capability for i1Pro (easily the most popular spectrophotometer for  color management), but indeed they have, I even called their support line to  verify. Needless to say I won't be upgrading.
Richard Southworth

Scott,
So let me make sure I understand - it's okay for i1Profiler to leave out OBC because it's a professional product, and all color professionals will have the extra equipment necessary to work around the deficiency.  Seems like a strained argument to me, I think I'll stick with the "fatal flaw" assessment, at least as it applies to my situation.  And for some reason I've never thought of ProfileMaker 5 as a consumer product, guess I'll have to change my frame of reference.
Sure, it would be nice to have a uvcut i1Pro or equivalent for use with difficult ink/paper combinations, but the reality is there are many of us who don't, regardless of our expertise level, and IMO X-Rite has limited their market accordingly.  Andrew Rodney's review of the product seems to me to be complete and objective, and I don't believe the word "fantastic" shows up anywhere.  Cheers,
Richard Southworth

Similar Messages

  • Fatal flaw installing software update 1.12, unlocked Treo 680

    Every time I try to install the software update (using Windows XP) the process starts normally, but then is interrupted and a message regarding a fatal flaw appears.  The Treo then has to be reset.  The cable connection must be OK, as syncing is not a problem.
    Post relates to: Treo 680 (Unlocked GSM)
    This question was solved.
    View Solution.

    Thanks for responding. 
    I did dowload the correct installer software (exe file).  The programs runs and the installation starts.  Treo reboots once and then there is a message on the screen saying not to reset or disconect.  For a few minutes the installer program indicates "copying files", but then the process stops and the "Unrecoverable Error" appears. The Treo then has to be rebooted.
    Treo has 32 MB free memory.
    Post relates to: Treo 680 (Unlocked GSM)

  • Another i1Profiler (semi-)fatal flaw

    It turns out one can download and install the new software from X-Rite, plug in an i1Pro, and licensing for monitor profiling is enabled.  So I thought I'd give it a try, see how it compares to same with PM5.
    The workflow initially appeared sane, except there is no mention of calibration and profiling as separable functions.  My monitor is well behaved, so I normally leave the video lut untouched and create a profile that does not bend the RGB channels, i.e. the vcgt tag is straight line.  In ProfileMaker calibration is optional, one can measure and create a profile with no change to the video adapter lut.  However there does not seem to be a method to do such in i1Profiler, everything I tried ended up creating a profile with non-straight line entries in the va lut.
    One can disable ADC (Automatic Display Control), a checkbox in the workflow Measurement section, but it doesn't kill video lut entries, not sure exactly what it does do.  And to disable ADC one has to leave all entries in the Display Settings step at default, hop over to the Measurement box, uncheck ADC, and then go back to Display Settings to change to all native.  Changing any entries in Display Settings away from the defaults locks (grays out) the ADC checkbox in the Measurement section.
    So somebody please tell me again how this is a professional product?
    Richard Southworth

    Amazingly there are still quite a few photographers/shops around that don't have high end equipment, cranking out senior pictures on a couple of 3880s, with 2-3 macs/pcs using lower cost monitors.  I do the best I can to aim them at reasonable displays (stay away from Frys, procure monitors with ips panels, etc.) but they are reluctant to spend several grand for the premium stuff.
    It might do some of you good to roam around the real world occasionally.
    Richard Southworth

  • My laptop has been fatally injured - how do I move iTunes to another computer without losing everything?

    My laptop has died and I now have a replacement.  I have my iPhone and the kids' iPods.  How can I set up iTunes on the new laptop without losing everything from the devices?  Or can't I? 
    Hilary

    Copy the ENTIRE iTunes folder from the old computer or the backup of the old computer to the new computer.

  • FM RH Integration: Broken Link to Book, the Fatal Flaw?

    I thought that I had fixed this issue. But, I ran into @ a recent conference where I met someone who experienced the same issue. The problem is that when you integrate projects from FM to RH on the same computer they retain that path. If you change the directory of one, you must re-establish the connection.
    This is all well and good. However,m if you move the FM>RH project to another computer and try to open the RH project, it asks you to re-establish the link. Again, well and good.
    The real problem occurs when you try to do this for several RH projects coming out of the same FM book. In this case, there is no message to relink the RH and FM book (as RH does in the previous cases). Instead you cannot update the RH topics from the book, cannot relink the FM book, nor do anything else, really.
    I ran into this with colleague at work. We were zipping the projects and putting them into a CMS. Then we'd download them and unzip. He received this bad error and eventually the complete corruption of the project (yes, even after deleting the .cpd file). I fixed this problem for the ONE FM>RH project that he had by deleting the book and re-adding it by reference.
    Then I met someone at this conference who had the same problem. I thought I had the fix for him. But it turns out that it did not work on his machine. Now I am experiencing the same problem.
    I have had to port several projects from MS XP to 2007. And I just spent all day having to recreate four projects in Japanese from the same FM book because 1) RH did not ask me to relink the book, 2) I could not delete the book and re-add it, 3) and when I did try to delete the book from the RH project, RH shuts down and says "Woops, sorry, we have a problem. Sorry. Bye." (Almost literally.)
    Then it completely goes bonkers and just shuts down - sans message - without any indication about what is going on.
    Has anyone had or experienced this same issue? I have some major projects that I will have to port to this upgraded operating system. I know that it is not the OS since it occurred on this other person's computer who was not using the same OS as I have. So what is it?

    I have run more tests  and am verging on certainty that this is a conditional text problem - at least for my projects.
    That is, I have three RH six RH projects linking to the same FM book. Three in English, three in Japanese.
    When I port the RH projects to a different directory and open them, I do not receive the relink request. If I attempt to update from the book, the project crashes and the cpd is corrupted.
    I can, however, delete the book and re-add by reference. I can only do this, though, for the project in English. When I try to do it for the Japanese projects, RH crashes completely. After the crash, I cannot delete the book, nor can I update, nor do anything much else. If I do continue trying to delete the book, the project becomes corrupted and useless.
    I am not completely convinced that the problem is a conditional text issue, however. As I noted, my buddy from the Philippines had the same crash scenarios, but he was not using conditional text that includes other languages.
    That is my story, and I am sticking with it.
    Charles

  • Captivate 6 has a "fatal error" when trying to open a blank project.

    Mac 10.8 Tried uninstalling and fresh install.

    Hi Vikram
    Thanks for getting back to me.
    I am using windows 7. The error happens whenever I record L I did have a very full hard disk when the issue started – but this has now been resolved and as I said I did reinstall Captivate.
    I am not using a different user account.
    Best wishes
    Susan

  • MACBOOK PRO HARD DRIVES  - FATAL FLAWS

    <edited by moderator>
    It appears that there are problems with the hard drives in MacBook Pros. I have one of these drives, is there a recall or has anyone experienced a failure?

    My MBP 17 was purchased in May 2006 and from the beginning, had very intermittent disk clicking, but it didn't sound like disk failure. It got progressively worse, until after updating to 10.4.11 the system would click and then freeze hard, requiring a power down to restart, after coming out of sleep every time. Sure enough, the drive was model ST96812AS with firmware 7.01. I had it replaced (I'm under AppleCare) and the nearest Apple Store replaced the faulty drive, which the Genius heard clicking away, WITH THE SAME BRAND, different model number (ST9120821AS), and firmware 7.01!!!! After driving over an hour back from the nearest Apple Store, doing a fresh install of Leopard, I was more than a little ticked off and called the Store back. I lost it. Of course, the Genius on the phone could only quote me the company line, but he finally offered to replace the Seagate with a different brand they had in stock (Now why didn't they do that in the first place, given that I specifically asked for a different brand?). Beforehand, he told me he had no control over what brand of drive Apple sends them and that officially, he couldn't do anything more unless and until something official showed up on Apple's support site. Long story short, they're replacing the Seagate with a different brand, but it took some convincing on my part.
    Yes, I understand that Apple is probably gathering data about all this, but I had called AppleCare about excessive disk clicking earlier this year, and they NEVER mentioned pending disk failure as a source. Yes, I have backups, but now I have to take yet another afternoon from work to get all this sorted out, permanently I hope. I am not happy about this.

  • Is the Query Builder (QuB) fatally flawed? Or I, perhaps?

    I have noticed at lot of issues on both the general and php discussion forums regarding the Query Builder. I just completed the contacts management system tutorial and everything worked fine until the last step which involved using the QuB. Has anyone else got this to work consistently?...

    Folks,
    "slow and not particularly intuitive."
    ADDT in a nutshell?...
    ADDT´s Query Builder is loaded in a browser, which - unlike a standard Windows/Mac/whatever application - has a completely different "memory management", and if you´re loading heaps of data (e.g. SQL results) in a browser, it can get real slow due to that.
    Any real "application" is by nature superior to the Query Builder, but it´s like comparing apples with pizza, as the "runtime environment" is a totally different one.
    Cheers,
    Günter Schenk
    Adobe Community Expert, Dreamweaver

  • HT4101 I discovered a fatal flaw in the iPad procedure for downloading images from camera to iPad: after selecting the images to be downloaded, an accidental touch of the "delete" button, wipes all selected images from the camera, with no warning?

    After downloading some 60 images from camera to iPad, I was "scrolling" down to select the last images, and inadvertently touched the "Delete" button that appears at the top right of the screen, when the "Select" option is chosen. I did not notice the warning "Delete 60 Images?", and continued scrolling down, when my finger touched the warning message. All my precious images were instantly deleted from the camera The sensitive touch screen feature makes this a real problem. Apple should "fix" this unacceptable feature, surely! I suggest that the images on the camera memory card should not be able to be deleted from the iPad, and this shpuld require to be done using the camera controls only. Similarly, the "Delete" or "Keep" options that appear after importing a selection from the camera, should NOT allow the images on rthe camera to be deleted, but only the imported (downloaded) images on the iPad. This unnecessary option could easily delete precious images from the camera!
    Apple should remove the option to delete images from the camera, and the iPad touch screen commands should olny delete images on the iPad. (Alternatively, the "delete option should be on a separatly accessed "page".)
    Surely enough users of the "Lightning to USB Camera Adapter" will agree with the above?

    No, I don't agree. Whenever you connect a camera to a computer you are given the opportunity to delete the photos on the camera after downloading in precisely the same way the iPad does this. The fact that you touched Delete and then ignored the Warning doesn't change anything.
    I've loaded thousands of photos on my IPad and never have had that problem.
    Don't blame a moment of carelessness on your device.
    If you want to make such a suggestion to Apple use http://apple.com/feedback

  • Arabic name displaying in JLabel using html tags

    If i execute the following code the value of the variable product_name as latin characters it's displaying correctely. If i use arabic characters it's adding white spaces
    import java.io.*;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.filechooser.*;
    import java.util.*;
    public class TestLabel extends JFrame {
         private static JLabel jl_scroll = new JLabel("");
         JScrollPane jsp = null;
         private String scroll_text = "";
              public TestLabel() {
                   super("TestLabel");
                   String product_name = "BSE";
                   scroll_text =
    "<html>"+ArabicToHindi("123")+"<sup>"+product_name+"</sup>"+ArabicToHindi("456")+"</html>";
                   product_name = null;
                   jl_scroll.setText(scroll_text);
                   JPanel jp_ticker = new JPanel();
                   jsp = new JScrollPane(jl_scroll);
    jsp.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_NEVER);
    jsp.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
                   jp_ticker.add(jsp);
                   Container contentPane = getContentPane();
                   contentPane.add(jl_scroll, BorderLayout.CENTER);
         public static String ArabicToHindi(String str) {
              char c0 = 1632;
              char c1 = 1633;
              char c2 = 1634;
              char c3 = 1635;
              char c4 = 1636;
              char c5 = 1637;
              char c6 = 1638;
              char c7 = 1639;
              char c8 = 1640;
              char c9 = 1641;
              char cdot = 44;
              String msg = str;
              String msgTo = "";
              if (str.length() >0) {
                   if (isNumber(str)) {
                   String str_char = "";
                   for (int i=0;i<str.length();i++) {
                        str_char = ""+str.charAt(i);
                        if
    (!str_char.equalsIgnoreCase(":")&&!str_char.equalsIgnoreCase("+")&&!str_char
    .equalsIgnoreCase("-")) {
                   if (str_char.equalsIgnoreCase("0")) {
                        msgTo = msgTo + c0;
                   else if (str_char.equalsIgnoreCase("1")) {
                        msgTo = msgTo + c1;
                   else if (str_char.equalsIgnoreCase("2")) {
                        msgTo = msgTo + c2;
                   else if (str_char.equalsIgnoreCase("3")) {
                        msgTo = msgTo + c3;
                   else if (str_char.equalsIgnoreCase("4")) {
                        msgTo = msgTo + c4;
                   else if (str_char.equalsIgnoreCase("5")) {
                        msgTo = msgTo + c5;
                   else if (str_char.equalsIgnoreCase("6")) {
                        msgTo = msgTo + c6;
                   else if (str_char.equalsIgnoreCase("7")) {
                        msgTo = msgTo + c7;
                   else if (str_char.equalsIgnoreCase("8")) {
                        msgTo = msgTo + c8;
                   else if (str_char.equalsIgnoreCase("9")) {
                        msgTo = msgTo + c9;
                   else if (str_char.equalsIgnoreCase(".")) {
                        msgTo = msgTo + cdot;
                        else {
                        msgTo = msgTo + str_char;
                   else {
                   msgTo = str;
              else {
                   msgTo = str;
              return msgTo;
         public static boolean isNumber(String str) {
              boolean flag_number = false;
              if (str.length()>0) {
                   String ch_msg = "";
                   for (int i=0;i<str.length();i++) {
                   ch_msg = ""+str.charAt(i);
                   if (ch_msg.equalsIgnoreCase("0")){
                        flag_number = true;
                   else if (ch_msg.equalsIgnoreCase("1")){
                        flag_number = true;
                   else if (ch_msg.equalsIgnoreCase("2")){
                        flag_number = true;
                   else if (ch_msg.equalsIgnoreCase("3")){
                        flag_number = true;
                   else if (ch_msg.equalsIgnoreCase("4")){
                        flag_number = true;
                   else if (ch_msg.equalsIgnoreCase("5")){
                        flag_number = true;
                   else if (ch_msg.equalsIgnoreCase("6")){
                        flag_number = true;
                   else if (ch_msg.equalsIgnoreCase("7")){
                        flag_number = true;
                   else if (ch_msg.equalsIgnoreCase("8")){
                        flag_number = true;
                   else if (ch_msg.equalsIgnoreCase("9")){
                        flag_number = true;
                   else if (ch_msg.equalsIgnoreCase("+")){
                        flag_number = true;
                   else if (ch_msg.equalsIgnoreCase("-")){
                        flag_number = true;
                   else if (ch_msg.equalsIgnoreCase(".")){
                        flag_number = true;
                   else if (ch_msg.equalsIgnoreCase(":")){
                        flag_number = true;
                   else {
                        flag_number = false;
                        break;
              return flag_number;
              public static void main(String[] args) {
                   JFrame frame = new TestLabel();
                   frame.addWindowListener(new WindowAdapter() {
                        public void windowClosing(WindowEvent e) {
                             System.exit(0);
                   frame.pack();
                   frame.setVisible(true);
    //------------------------------------

    I'm not sure why you would do it the way you have it implemented in 3 select lists.
    Why not use a Item Type of Date Picker, and let the user use the pop-up Date Picker to select the date.
    You code has some fatal flaws:
    1) You can't see any data before 2000
    2) You can't see any data past 2010 (probably not an issue now)
    3) It's possible to specify February 31 as a date
    Using the built-in Date Item type will eliminate these issues and at the same time, make your UI more streamlined.
    Thanks,
    - Scott -

  • Painting works fine under OS X, but vanishes under Linux (Fedora 6)

    I've written some code to draw arrays and objects, which I'm using in the CS2 class I teach (where the students are learning about references). It works fine under OS X, but (to my horror) when I tried using it in front of the students in our Linux labs, the diagrams would disappear (i.e., the window would become blank) after a few milliseconds. Sometimes we could get them to stick around by resizing the window, but this was not reliable.
    I should note that my OS X testing is under Java 1.5 (because Macs don't have 1.6 yet) and the Linux (Fedora 6, I believe) is using Java 1.6.
    The code is given below. There are two classes, ViewPanel and ObjectView. Run the main() method in ViewPanel. Both of these are in the cs2tools package.
    Any help would be greatly appreciated.
    package cs2tools;
    import java.awt.*;
    import java.awt.font.*;
    import javax.swing.*;
    import java.util.*;
    import java.util.List; // For disambiguation
    /** Provides methods to graphically display objects and arrays. */
    public class ViewPanel extends JPanel {
         /** Singleton instance to allow static method calls, hiding OOP details from students. */
         private static ViewPanel instance = null;
         private static final long serialVersionUID = 1L;
         protected static void createInstance() {
              if (instance == null) {
                   JFrame frame = new JFrame();
                   frame.setSize(640, 480);
                   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                   instance = new ViewPanel();
                   frame.add(instance);
                   frame.setVisible(true);
         /** Displays object at position x, y. */
         public static void display(Object object, int x, int y) {
              display(object, x, y, "");
         /** Displays object at position x, y, using name in the title. */
         public static void display(Object object, int x, int y, String name) {
              createInstance();
              instance.addObject(x, y, object, name);
              instance.repaint();
         /** Refreshes the graphics to show any changes to displayed objects. */
         public static void refresh() {
              if (instance != null) {
                   instance.repaint();
         private FontRenderContext fontRenderContext;
         private Graphics2D graphics;
         private List<Object> objects;
         private List<ObjectView> views;
         protected ViewPanel() {
              objects = new ArrayList<Object>();
              views = new ArrayList<ObjectView>();
              setBackground(new Color(0x8fbfff)); // A tasteful light blue
         protected void addObject(int x, int y, Object object, String instanceName) {
              if (objects.contains(object)) {
                   throw new Error("The object " + object + " has already been displayed");
              objects.add(object);
              views.add(new ObjectView(this, x, y, object, instanceName));
         protected FontRenderContext getFontRenderContext() {
              return fontRenderContext;
         protected void paintComponent(Graphics g) {
              super.paintComponent(g);
              graphics = (Graphics2D)g;
              fontRenderContext = graphics.getFontRenderContext();
              for (ObjectView view : views) {
                   view.draw();
              for (ObjectView view : views) {
                   view.drawPointers(objects, views);
         public static void main(String[] args) {
              int[][] arr = new int[2][3];
              arr[0] = arr[1];
              display(arr, 100, 100);
              display(arr[0], 300, 100);          
    package cs2tools;
    import java.awt.*;
    import java.awt.geom.*;
    import java.lang.reflect.*;
    import static java.awt.Color.*;
    import static java.lang.Math.*;
    import java.util.List; // For disambiguation
    import static java.lang.reflect.Array.*;
    /** View of a single object, used by ViewPanel. */
    public class ObjectView extends Rectangle2D.Double {
         /** Height of each field box. */
         public static final int BOX_HEIGHT = 20;
         /** Width of each field box. */
         public static final int BOX_WIDTH = BOX_HEIGHT * 3;
         private static final long serialVersionUID = 1L;
         private Field[] fields;
         private Rectangle2D[] nameRectangles;
         private Object object;
         private ViewPanel panel;
         private String title;
         private Rectangle2D titleBar;
         private Rectangle2D[] valueRectangles;
         public ObjectView(ViewPanel panel, int x, int y, Object object, String name) {
              super(x, y, 0, 0);
              this.object = object;
              this.panel = panel;
              fields = object.getClass().getDeclaredFields();
              // Create title bar
              titleBar = new Rectangle2D.Double(x, y, BOX_WIDTH * 2 + BOX_HEIGHT, BOX_HEIGHT);
              title = name + ":" + object.getClass().getSimpleName();
              if (object.getClass().isArray()) {
                   // Adjust size of the entire cs2tools to accomodate fields
                   setRect(getX(), getY(), BOX_WIDTH * 2 + BOX_HEIGHT, BOX_HEIGHT * (3 + getLength(object)));
                   // Create field name and value rectangles
                   nameRectangles = new Rectangle2D[getLength(object)];
                   valueRectangles = new Rectangle2D[getLength(object)];
                   y += BOX_HEIGHT;
                   for (int i = 0; i < getLength(object); i++) {
                        y += BOX_HEIGHT;
                        nameRectangles[i] = new Rectangle2D.Double(x, y, BOX_WIDTH, BOX_HEIGHT);
                        valueRectangles[i] = new Rectangle2D.Double(x + BOX_WIDTH, y, BOX_WIDTH, BOX_HEIGHT);
              } else { // Not an array
                   // Adjust size of the entire cs2tools to accomodate fields
                   setRect(getX(), getY(), BOX_WIDTH * 2 + BOX_HEIGHT, BOX_HEIGHT * (3 + fields.length));
                   // Create field name and value rectangles
                   nameRectangles = new Rectangle2D[fields.length];
                   valueRectangles = new Rectangle2D[fields.length];
                   y += BOX_HEIGHT;
                   for (int i = 0; i < fields.length; i++) {
                        fields.setAccessible(true);
                        y += BOX_HEIGHT;
                        nameRectangles[i] = new Rectangle2D.Double(x, y, BOX_WIDTH, BOX_HEIGHT);
                        valueRectangles[i] = new Rectangle2D.Double(x + BOX_WIDTH, y, BOX_WIDTH, BOX_HEIGHT);
         protected void centerDot(Rectangle2D rect, Graphics2D graphics) {
              double radius = min(rect.getWidth() / 4, rect.getHeight() / 4);
              double x = rect.getCenterX();
              double y = rect.getCenterY();
              graphics.fillOval((int)(x - radius), (int)(y - radius), (int)(radius * 2), (int)(radius * 2));
         protected void centerText(String text, Rectangle2D rect, Graphics2D graphics) {
              Rectangle2D bounds = panel.getFont().getStringBounds(text, panel.getFontRenderContext());
              double x = (rect.getWidth() - bounds.getWidth()) / 2;
              double y = ((rect.getHeight() - bounds.getHeight()) / 2) - bounds.getY();
              graphics.drawString(text, (int)(rect.getX() + x), (int)(rect.getY() + y));
         /** Draw this ObjectView, but not its pointers. */
         public void draw() {
              try {
                   Graphics2D graphics = (Graphics2D) (panel.getGraphics());
                   // Draw the outer box
                   graphics.setColor(LIGHT_GRAY);
                   graphics.fill(this);
                   graphics.setColor(BLACK);
                   graphics.draw(this);
                   // Draw the title bar
                   graphics.setColor(WHITE);
                   graphics.fill(titleBar);
                   graphics.setColor(BLACK);
                   graphics.draw(titleBar);
                   graphics.setColor(BLACK);
                   centerText(title, titleBar, graphics);
                   // Draw the fields
                   for (int i = 0; i < nameRectangles.length; i++) {
                        String name;
                        String value;
                        boolean isPrimitive;
                        if (object.getClass().isArray()) {
                             name = i + "";
                             value = get(object, i) + "";
                             isPrimitive = object.getClass().getComponentType().isPrimitive();
                        } else {                         
                             Field field = fields[i];
                             name = field.getName();
                             value = field.get(object) + "";
                             isPrimitive = field.getType().isPrimitive();
                        graphics.setColor(WHITE);
                        graphics.fill(valueRectangles[i]);
                        graphics.setColor(BLACK);
                        graphics.draw(valueRectangles[i]);
                        centerText(name, nameRectangles[i], graphics);
                        if (isPrimitive) {
                             centerText(value, valueRectangles[i], graphics);
                        } else if (value.equals("null")) {
                             graphics.setColor(BLUE);
                             centerText("null", valueRectangles[i], graphics);
                        } else {
                             graphics.setColor(BLUE);
                             centerDot(valueRectangles[i], graphics);
              } catch (IllegalAccessException e) {
                   // We checked for this, so it should never happen
                   e.printStackTrace();
                   System.exit(1);
         /** Draw lines for any pointers from this ObjectView's fields to other ObjectViews in views. */
         public void drawPointers(List<Object> objects, List<ObjectView> views) {
              try {
                   Graphics2D graphics = (Graphics2D) (panel.getGraphics());
                   graphics.setColor(BLUE);
                   for (int i = 0; i < nameRectangles.length; i++) {
                        boolean isPrimitive;
                        Object target;
                        if (object.getClass().isArray()) {
                             isPrimitive = object.getClass().getComponentType().isPrimitive();
                             target = get(object, i);
                        } else {                         
                             Field field = fields[i];
                             isPrimitive = field.getType().isPrimitive();
                             target = field.get(object);
                        if (!isPrimitive && (target != null)) {
                             for (int j = 0; j < objects.size(); j++) {
                                  if (target == objects.get(j)) {
                                       ObjectView targetView = views.get(j);
                                       int x = (int)(valueRectangles[i].getCenterX());
                                       int y = (int)(valueRectangles[i].getCenterY());
                                       int tx = (int)(targetView.getCenterX());
                                       int ty = (int)(targetView.getCenterY());
                                       if (abs(x - tx) > abs(y - ty)) { // X difference larger -- horizontal line
                                            if (x < tx) { // Draw line to left side of target
                                                 graphics.drawLine(x, y, (int)(targetView.getX()), ty);
                                            } else { // Draw line to right side of target
                                                 graphics.drawLine(x, y, (int)(targetView.getX() + targetView.getWidth()), ty);
                                       } else { // Y difference larger -- vertical line
                                            if (y < ty) { // Draw line to top of target
                                                 graphics.drawLine(x, y, tx, (int)(targetView.getY()));
                                            } else { // Draw line to bottom of target
                                                 graphics.drawLine(x, y, tx, (int)(targetView.getY() + targetView.getHeight()));
              } catch (IllegalAccessException e) {
                   // We checked for this, so it should never happen
                   e.printStackTrace();
                   System.exit(1);

    Put your posted code inside code tags, or things like array element access expressions using common indices such as 'i' will be interpreted as italic by the forum software. Code tags are the word 'code' between square braces at the start and '/code' between square braces at the end.
    The fact that your code worked on a Mac is dumb luck. The code has a fatal flaw that causes the behavior you see on the Linux machines. Incidentally, Windows shows the same 'disappearing' problem.
    The error is in your draw() and drawPointers() methods. Both methods call
    panel.getGraphics()There is no guarantee that the Graphics object returned by this call is the same Graphics object being used to paint to the screen at any given moment. On a Mac, it appears to be. Elsewhere it clearly is not. You should be passing along the Graphics object handed to you in the paintComponent() method. This is the same Graphics object associated with the screen.
    protected void paintComponent(Graphics g) {
            super.paintComponent(g);
            graphics = (Graphics2D) g;
            fontRenderContext = graphics.getFontRenderContext();
            for (ObjectView view : views) {
                view.draw(g);
            for (ObjectView view : views) {
                view.drawPointers(g, objects, views);
        } public void draw(Graphics g) {
            try {
                Graphics2D graphics = (Graphics2D) g;
    public void drawPointers(Graphics g, List<Object> objects, List<ObjectView> views) {
            try {
                Graphics2D graphics = (Graphics2D) g;

  • Displaying date field in menu using HTML DB

    How do I display a date field in HTML DB as drop down. I have the below HTML code which needs to be represented in HTML DB.
    The display on the page should be like
    Enter Start Date : "Month" "Day of the Month" "Year".
    The above values in quotes should be displayed as enterable fields with LOVs.
    Any help would be greately appreciated.
    <td colspan="3">Select a Date Range for the Report</td>
    </tr>
    <tr>
    <td nowrap="nowrap">
    <label>
    <input type="radio" name="selectDateType" value="mdy">
    (Month Day, Year)</label></td>
    <td nowrap="nowrap"><label for="startDateStringMonth">Start date:</label></td>
    <td nowrap="nowrap" width="100%">
    <select name="startDateStringMonth" id="startDateStringMonth" tabindex="3" >
         <option value="">Month</option>
         <option value="0">January</option>
         <option value="1">February</option>
         <option value="2">March</option>
         <option value="3">April</option>
         <option value="4">May</option>
         <option value="5">June</option>
         <option value="6">July</option>
         <option value="7">August</option>
         <option value="8">September</option>
         <option value="9">October</option>
         <option value="10">November</option>
         <option value="11">December</option>
         </select>
    <select name="startDateStringDay" id="startDateStringDay" tabindex="4">
    <option value="">Day</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
    <option value="8">8</option>
    <option value="9">9</option>
    <option value="10">10</option>
    <option value="11">11</option>
    <option value="12">12</option>
    <option value="13">13</option>
    <option value="14">14</option>
    <option value="15">15</option>
    <option value="16">16</option>
    <option value="17">17</option>
    <option value="18">18</option>
    <option value="19">19</option>
    <option value="20">20</option>
    <option value="21">21</option>
    <option value="22">22</option>
    <option value="23">23</option>
    <option value="24">24</option>
    <option value="25">25</option>
    <option value="26">26</option>
    <option value="27">27</option>
    <option value="28">28</option>
    <option value="29">29</option>
    <option value="30">30</option>
    <option value="31">31</option>
    </select>
    <select name="startDateStringYear" id="startDateStringYear" tabindex="5">
    <option value="2000">2000</option>
    <option value="2001">2001</option>
    <option value="2002">2002</option>
    <option value="2003">2003</option>
    <option value="2004">2004</option>
    <option selected="true" value="2005">2005</option>
    <option value="2006">2006</option>
    <option value="2007">2007</option>
    <option value="2008">2008</option>
    <option value="2009">2009</option>
    <option value="2010">2010</option>
    </select> </td>
    </tr>
    <tr>
    <td nowrap="nowrap"> </td>
    <td nowrap="nowrap"><label for="endDateStringMonth">End date:</label></td>
    <td nowrap="nowrap">
    <select name="endDateStringMonth" id="endDateStringMonth" tabindex="6">
         <option value="">Month</option>
         <option value="0">January</option>
         <option value="1">February</option>
         <option value="2">March</option>
         <option value="3">April</option>
         <option value="4">May</option>
         <option value="5">June</option>
         <option value="6">July</option>
         <option value="7">August</option>
         <option value="8">September</option>
         <option value="9">October</option>
         <option value="10">November</option>
         <option value="11">December</option>
         </select>

    I'm not sure why you would do it the way you have it implemented in 3 select lists.
    Why not use a Item Type of Date Picker, and let the user use the pop-up Date Picker to select the date.
    You code has some fatal flaws:
    1) You can't see any data before 2000
    2) You can't see any data past 2010 (probably not an issue now)
    3) It's possible to specify February 31 as a date
    Using the built-in Date Item type will eliminate these issues and at the same time, make your UI more streamlined.
    Thanks,
    - Scott -

  • Grreat potential, but I need to return it....

    I really like the AppleTV for it's size, capabilities, and ease of use but it has a fatal flaw for me that means I need to return it.
    With over 700 ripped-DVD's in my iTunes collection, plus > 40 Gigs of music I never get any of my iphoto collection onto the box which means that the default screen saver shows the default Apple images loaded onto the system rather than the ones of my grand-daughter we want to see. To state that my wife is unhappy with this one problem would be an understatement, so unless someone can explain how I can force my iPhoto Library in place it's back to the MythTV box for me.
    Thanks,
    Graham
      Mac OS X (10.4.9)  

    I don't think that is accurate about the number of photos that you can get on the Apple TV, I think you can get your full collection or very close. I comfortably have 14,000 on my Apple TV. I didn't think they would fit but it appears there might be some kind of compression going on as they move to the Apple TV, which may explain why it takes a LONG TIME to sync photos. Start it and go to bed or to work (and check on it when you get back, it may not be done - ha ha). By the way, I suggest clearing off all other content (with exception of a few of your favorite music files which you can use to play along with your photo slideshows). I had exactly the same reaction as you initially when I realized the photo situation. However fortunately the syncing works so well that is fully reasonable to keep movies and majority of music on your computer and use Appled TV hard drive only for photos and a little music. Try it before you give up on it. Wifey will be happy .

  • Search and replace, everey second character?

    I'm making a VI that is communicating with an external device through a protocol built up of frames. I have made a couple of subVIs that put these frames together as hexadecimal strings that are then converted into numbers and passed on to the device. The protocol uses an escape character in order to avoid sending an BOF or EOF constant at the wrong time. I've made a subVI that is supposed to do this using the Serch and Replace function. At first it seems rather elegant, but it has a fatal flaw, if one of the characters it is supposed to hide is written across the edge of a byte, it will still be replaced.
    Example:
    11 01 00 EC 0D EA 05 08
    is replaced by
    11 01 00 E7 DE 0D EA 05 08
    C0, C1, 7D are the characters to be replaced, 7D is the escape character.
    Now I wonder, is it possible to make the search and replace function search only every second character in a string?
    Solved!
    Go to Solution.
    Attachments:
    Insert_Escape_Characters.vi ‏10 KB

    Hi,
    I'm not sure to understand your problem, but I propose this solution !
    Hope it helps you.
    Best regards,
    Vincent
    Message Edité par ramses64 le 02-20-2009 03:57 AM
    V-F
    Attachments:
    replace.PNG ‏17 KB

  • Aperture/Photoshop Color Control Issues

    I am photographer that has been doing the unthinkable for the past four years – I use the Finder to scroll through pictures I’ve taken and load them one-by-one into Photoshop CS4 for editing. I know this is dumb, and I really want to change my workflow. I’ve really like Aperture, but it has one fatal flaw (and one minor flaw) that is preventing me from using it. I desperately need help, as I estimate I need to review and edit 50,000+ images this year!
    I’ll give you as best of a description of each problem and everything I can remember that I’ve tried. Note, that these issues replicate on three different Mac (all also clean installs), Mac OS 10.5 and 10.6, a PC, and the issue is the same with Lightroom 2 and 3 Beta, as well as Aperture 2 and 3. I must be doing something really dumb!
    The Major Problem:
    So I start off with a picture like this in Aperture (it may be useful to open images in multiple tabs):
    http://img210.imageshack.us/img210/5585/28037816.png
    So, I go to work making my adjustments to the RAW file (a NEF, since I shoot Nikon) and end up with something like this:
    http://img23.imageshack.us/img23/3703/43700549.png
    Now I right click on the picture and go to edit it in Photoshop CS4. I have my format set to work in 8-bit PSD files at 300 dpi(Aperture>Preferences>Export), and am using the sRGB IEC61966-2.1 color profile embedded in the picture. My proofing profile in Aperture is also set to this same profile (View>Proofing Profile), as well as the working profile in Photoshop CS4 (Edit>Color Settings). And this is what I get:
    http://img339.imageshack.us/img339/9311/35278285.png
    Note that I haven’t made a single adjustment in Photoshop! It just opens that way!
    Let’s say I go a step further and try to recover my desaturated image. I’ll apply a series of filters here that I normally wouldn’t for this image, but will do here to further illustrate my point. Here’s what I produce:
    http://img249.imageshack.us/img249/6954/97748984.png
    And now for the fun part. I save (File>Save) the image in Photoshop making sure to Maximize compatibility (since Aperture can’t seem to read it if I don’t select this) and Aperture faithfully works to update the preview of the image. Unfortanately, the image now looks like this:
    http://img101.imageshack.us/img101/9811/77252849.png
    So basically, I have no color management occurring from program to program. I know photographers use both of these programs successfully, but I just can’t make them preserve color faithfully! It happens with TIFF files, it occurs no matter if I use a PC, or either version of Aperture or Lightroom! I’ve tried multiple Macs and multiple OS versions, and am clearly missing something.
    Help me!
    (The minor issue I described above may be corrected if we can get this fixed, so I’ll follow-up if needed.)

    Lets see if we can figure this out.
    I personally use a calibrated Apple Cinema Display to start with so maybe that makes a difference.
    So, in Aperture do this
    1) edit the image of choice
    2) if you like go ahead and set the onscreen proofing profile -let's use sRGB 2.1 in this example
    — View>Proofing Profile then select sRGB on the top
    3) Then select the "Onscreen Proofing" so it is checked also under the View menu
    4) Go to your Aperture Export presets
    — Aperture>Presets>Image Export
    5) The very top preset usually is "JPEG - Original Size"
    — make sure the color profile is "sRGB IEC61966-2.1"
    — make sure "Black Point Compensation" is NOT checked
    Now, the image you just edited go ahead and "export Version" and save it to the desktop
    When done open it in Photoshop.
    Make sure that your color settings in Photoshop is set to sRGB
    HOWEVER, if it isn't, you may get a message that the "embedded profile does not match your working space in photoshop"
    NOTE: if Photoshop is set to Adobe RGB , that too is ok and that's when you will get the "mismatch profile message"
    So, IF you DO get that message, the rule is ALWAYS Honor the embedded profile of the image/photo
    If your Photoshop is set to sRGB too, then you won't need to worry about this.
    If your image still looks washed out at this point let us know.
    In my case what I export from Aperture 3 looks the same in Photoshop CS4
    Message was edited by: Falcon01

Maybe you are looking for

  • IMPORT Statement Issue (Internal Table)

    Hi All, I am using an IMPORT statement to get all the data from other report's internal table. Now whenever this (the other report's internal table) is changed (for field addition, etc), my report throws a dump. Hence, everytime I have to add these f

  • GIF animations load only first frame

    GIF animations show up as still images. Animation only loads after right-clicking and going to image info.

  • How can I change my alternate Apple-ID

    Hello from Germany, I have had an issue with synchronization (photos, calender, notices etc.) between my different devices (Mac, ATV, iPhone, iPad) for a few months. Today I realized the origin of my issue - at least I think so that this is the origi

  • Photoshop cs4 opens images black and only in camera raw

    I'm running Photoshop cs4 on a pc. Recently, it began having 2 issues. First, it started opening everything into Bridge Camera Raw instead of just opening the image itself. Next issue is that when I attempt to open an image from Camera Raw, it opens

  • Video hanging on iPad 2

    When using the xfinity TV or HBO Go app... video hangs after 15 seconds.... audio continues.   I am using my Comcast Home Network which speed tests indicate that I am getting 18-22 Mbps download and 4 Mbps upload.   When I called Comcast, they had me