Basic questions about the CM handling of Photoshop

I have some basic questions how Potoshop handles colour management. Most probably this has been discussed many times before, but frankly, the manual is pretty poorly written on this subject. I do understand the principle of colour management pretty well, but am not sure whether I understand what Photoshop is doing. So could somebody please comment whether my reasoning is correct or not.
Let's assume my monitor is calibrated and its profile loaded in OSX's monitor preference panel. Let's further assume I'm working strictly in RGB.
Is the following correct:
• When I open a picture which has an embedded profile, then Photoshop first calculates the "true" values from the embedded profile (whatever this means) and from this point the screen representation based on the profile which I defined in the system pref pane. So the screen representation remains always the same, regardless of the embedded profile (besides some possible conversion artefacts, especially on the edges of the colour space).
• The same holds true in the opposite direction, so when I work on that picture on screen, then no matter which RGB space I pick as my working space, the result will always be exactly the same (except those aforementioned artefacts).
• Hence it doesn't matter which RGB colour space I choose as my working space, it could be sRGB, Adobe RGB, "my own wild profile", whatever, the results are always the same. Of course the RGB values will differ, but this will be compensated by the embedded profile.
• Yet the theoretically best working space is the colour space of my monitor, because this minimizes possible artefacts.
• When I "convert" the picture from one profile into an other, then not only that new profile is assigned and embedded, but also the RGB values are recalculated accordingly, so that the result will remain the same. For example, I could first "convert" a picture from the camera space to my monitor space, then work on it, and finally "convert" it to sRGB before uploading it to a web site.
• When I "assign" a new profile, then a new profile is simply assigned and embedded but the RGB values are not adjusted. So the RGB values remain the same, but because a different profile is embedded, the picture will actually be changed. Since Photoshop will recalculate the screen representation based on that new profile (and the monitor profile), I will see this change on the screen. (This action doesn't make much sense, except maybe to simulate the possible outcome on a system which misinterprets the profile, e.g. assumes sRGB.)
• And finally, when I leave the picture untouched but change the monitor profile in the system pref pane, then of course the picture will not change, but its screen representation will change, because Photoshop uses that profile to calculate the screen representation. (This action makes even less sense, of course.)
Have I understood? Then I have two final questions:
• When I open a RGB file without any profile in it, what does Photoshop assume? How does it calculate the screen display?  What does it do if I "convert" such a picture or "assign" a profile?
• If I select in the colour settings as working color space the monitor space, then the colour managment rule for RGB changes to "Colour management off" and can't be changed to a different value. I don't understand this.
Thanks for your patience.

• Yet the theoretically best working space is the colour space of my monitor, because this minimizes possible artefacts.
No.
(Edit: Any one screen usually has to be considered incidental, changing and transient and is not the target-medium, so it makes little sense to work based on its specific limitations.)
• When I open a RGB file without any profile in it, what does Photoshop assume? How does it calculate the screen display? What does it do if I "convert" such a picture or "assign" a profile?
If one opens an unprofiled file, Photoshop treats it as if it had the profile selected under RGB-Working-Space embedded and calculates display and conversion on that basis.
(Edit: And that’s the danger of unprofiled files – they would look different if someone edited them who used a different Working Space.)
Assigning such a file a profile is no different from assigning a profiled image a different profile – the RGB-values remain unchanged, the »key« for interpreting them changes and subsequently it will be displayed differently.

Similar Messages

  • A few (basic) questions about the iPhone

    I just got my iPhone 3GS about a week ago. I am very new to the whole smartphone arena, so some of my questions my seem stupid. Please be kind regardless.
    I've learned a lot about the iPhone by trial and error (pressing buttons to see what happens) but one thing I just discovered was the multitasking bar. When I accessed it, I saw every app I had run since I got the phone displayed in the multitasking bar. And I know that by holding the icons on the bar, you can bring up a red minus sign, touch it, and remove that app from the bar. My question is, are all of those apps displayed in the mutltasking bar constantly running in the background, and thus, draining more battery than necessary?
    Secondly, on the topic of wifi. I have my phone set to automatically join known networks and ask me to join unknown networks that it detects. However, it doesn't seem to be doing that. I still have to manually go to settings and search for the network. It will automatically join my home network (for example, when I go somewhere and come home, it will switch back to my home network automatically), but it won't do this with, for example, the wifi network at McDonald's even though I did go through the setup and make that network a known network. Am I mistaken in thinking the phone should do this automatically, or do I have to search for the network every single time? Also, since I have "ask to join networks" checked, will it automatically detect nearby networks, or do I also have to manually search for those? I understand this question may be confusing, so I can try to clarify if need be.
    My last question is concerning conserving the battery. I currently have both wifi and 3G active on my phone, and I have read conflicting reports of which one drains more battery. Some say to turn off 3G and keep wifi, others say vice versa. I'm at home a lot so I'm always near my home wifi network and don't need 3G for data transfer unless I'm out and about. So is it better to turn 3G off unless I leave? I'm just trying to do whatever I can to conserve battery because I've noticed that the battery drains quite rapidly.
    Sorry for the long post, I just wanted totry and clear those things up. I hope you can help me. Thanks in advance.

    drew081886 wrote:
    I just got my iPhone 3GS about a week ago. I am very new to the whole smartphone arena, so some of my questions my seem stupid. Please be kind regardless.
    I've learned a lot about the iPhone by trial and error (pressing buttons to see what happens) but one thing I just discovered was the multitasking bar. When I accessed it, I saw every app I had run since I got the phone displayed in the multitasking bar. And I know that by holding the icons on the bar, you can bring up a red minus sign, touch it, and remove that app from the bar. My question is, are all of those apps displayed in the mutltasking bar constantly running in the background, and thus, draining more battery than necessary?
    Only the last 4 apps to be run are actually active and in RAM. The others are swapped out to flash memory in a saved state (i.e you should be able to resume where you left off, if the app is written to support that). They don't therefore drain battery. I close all apps down from time to time (every few days) just to keep things neat.
    Secondly, on the topic of wifi. I have my phone set to automatically join known networks and ask me to join unknown networks that it detects. However, it doesn't seem to be doing that. I still have to manually go to settings and search for the network. It will automatically join my home network (for example, when I go somewhere and come home, it will switch back to my home network automatically), but it won't do this with, for example, the wifi network at McDonald's even though I did go through the setup and make that network a known network. Am I mistaken in thinking the phone should do this automatically, or do I have to search for the network every single time? Also, since I have "ask to join networks" checked, will it automatically detect nearby networks, or do I also have to manually search for those? I understand this question may be confusing, so I can try to clarify if need be.
    It should automatically list new networks when (a) you're in range and (b) you try to connect to the internet (e.g. browse to a web page or check for email)
    My last question is concerning conserving the battery. I currently have both wifi and 3G active on my phone, and I have read conflicting reports of which one drains more battery. Some say to turn off 3G and keep wifi, others say vice versa. I'm at home a lot so I'm always near my home wifi network and don't need 3G for data transfer unless I'm out and about. So is it better to turn 3G off unless I leave? I'm just trying to do whatever I can to conserve battery because I've noticed that the battery drains quite rapidly.
    The issue is not which drains more battery, but which you need to connect to the internet. Where you have wifi access, switch off 3G, where you have 3G, switch off wifi.
    Sorry for the long post, I just wanted totry and clear those things up. I hope you can help me. Thanks in advance.

  • Basic question about the usage of LIKE operator

    Hello,
    I have a parameter that I want to use in a LIKE clause as follows:
    match returned if the field is LIKE the third parameter.
    LIKE '%'?3'%' This does not work as intended. Can anyone help?
    Julien.

    shouln't it be
    LIKE '%?3%'
    (just two quote marks instead of four)

  • Basic question about the Info.plist

    I have a whole bunch of appilcations I am developing. I when I generated my certificates I got a prefix. Do I put this prefix in my Bundle Identifier field in my Info.plist file?
    At present my Bundle Identifier says:
    com.yourcompany.$(PRODUCT_NAME:identifier}
    I imagine I change "yourcompany" to my company's name.
    But where is the PRODUCT NAME:identifier coming from? Where is this defined?
    It seems to take the app name as specified in the main project file.

    Ah, i didn't realize that the Get Info on the project file would yield slightly different results than the Get Info on the target; they both have long lists of C++ options, etc., but at the end the target has the product name, and that is where I can edit it.
    Thank goodness for the forums, the system is complex and the documentation weak.

  • Basic questions about Infocube

    Hi, everyone.
    I got very basic questions about infocube data handling.
    With infopackage, I extracted all the data about employees from R/3.
    But there were some mistakes during inputting employee data, like positions,
    so I just extracted those employees data once more.
    Now I have two requests in infocube, where the first one has some wrong data.
    Is there any solutions about this?
    I might got it all wrong, so as beginner, any suggestions and explanations will
    be grateful.

    Hi,
    You can manually delete the earlier request by going in the Manage option of the cube. select the request and click on delete icon at the bottom.
    Other option is to make setting in the Infopackage to delete similar or overlapping request.
    Data target tab --> 6th column Automatic loading / deletion of similar request. --> click on the blank icon --> you will get a pop-up --> select the radio button - "delete existing request" --> Select Conditions --> Infosource are same, datasource are same and source system are same, --> selections are "Same or  More Comprehensive "
    Assign points if useful
    Regards
    Venkata Devaraj !!!

  • Basic questions about CISCO IOS

    Hi everybody, Jack here,
    I have some basic questions about the Cisco IOS, could someone help me addressing some of them please? Any feedback would be greatly appreciated.
    Basically, I have two IP addresses assigned by our Cable ISP. From what I understood you can configure a Cisco router for multiple IP addresses using the IOS, thereby allowing someone like myself to take advantage of having multiple IP addresses. This may seem unnecessary to some, but I've always wanted to put the 2nd IP address to use, since after all, I've been paying for it.
    I was just wondering if someone could confirm that what I'm hoping to accomplish is indeed within the capability of the Cisco IOS (i.e. Fully utilize my 2 IP addresses). As well, if someone could kindly suggest a decent CISCO router for online gaming home use that would be super awesome!
    Thank you all so much for reading through the wall of text:)
    Jack

    Jack
    Certainly using multiple IP addresses is in the capability of Cisco IOS routers. How they can be used depends on the relationship of the IP addresses. I am assuming that we are talking about IP addresses assigned for the user to use and that the IP address for the ISP connection is not one of these that we are talking about.
    If both of the IP addresses that you have been assigned are within the same subnet then you would assign one of the addresses to the router interface to establish IP communication between the router and the ISP and to enable Internet connectivity for the devices inside your network that will use the router as their gateway to the Internet. The other address that is assigned can be used for address translation and in particular for static address translation which would make one of your devices inside to be reachable for connections initiated from the Internet (if that is something that you might want to do).
    If the addresses that are assigned to you are in different subnets then you could assign one address to the outside router interface and assign the other address to the router inside interface. Or you could use the second address for address translation.
    I do not have much expertise with online gaming, but I would think that either the Cisco 881 router or the 890 router might be appropriate for you. If 100 Mb connection is sufficient then probably the 881 would be the one to look at. If you need Gig connection then look at the 890.
    HTH
    Rick

  • Basic questions about Notes domino connector

    Hi,
    I have a very basic question about the Lotus Domino connector for OIM. We have a requirement to provision accounts into the domino mail server and while doing that also update some information directly into a separate nsf file.
    I checked the documentation and it seems while configuring an IT resource, we need to give the Mail DB path, and thats the only place where it refers to it.
    Could you guys please let me know if this can be done? Can I write directly to a different nsf file, which is not like provisioning to the complete mail server. So the other attributes in the IT resource may not be able to be set up as its just the file I need to provision into.
    Looking forward to your response.
    Thanks, M

    Hello folks, please share your experience working with the lotus notes connector.
    Thanks, M

  • Basic questions about Network Licence

    Hi,
    Before buying, I have some basics questions about the network licence of Acrobat
    As an example, if I buy 5 network licence for 20 users.
    If the 5 licence are used or if one user is outside and can't access the licence serveur, is there still some basic features available? I mean, is there a "acrobat reader" part that still allow users to read pdf?
    In the same kind of problem, if 10 users are using Acrobat just for reading pdf file and that a user now want to use acrobat to create a pdf, is there still available licence  or the 5 firsts that are just reading have take the 5 licences available?
    Thank you for your answers

    This is a user to user forum, with the space provided by Adobe
    This is not official Adobe support... I think you need to contact Adobe

  • Basic questions about JRE installation

    I am using NSIS to make a installer, which insalls the JRE 1.5, JMF, Javamp3, then our own software packages.....
    Firstly I have some basic question about the general installatio/deinstallation.
    1 Why sometimes is it required to reboot computer for the installed software to take effect, e.g.
    JRE 1.5. If not, what doest NOT take effect? (Actually in many cases, it seems to work even if not reboot the computer).
    Regarding the JRE 1.5,
    I am wondering:
    1 where is the registry entry written in windows?
    2 how to make the JRE installation process silent?
    Thanks !

    Just click on this link http://mindprod.com/jgloss/registry.html.

  • Basic question about NR filter

    Very basic question about the (perhaps oversimplified) interface of the noise reduction filter.
    Does anyone know definitively whether the first "Strength" slider is a master control for the filter overall (i.e. it controls the power of all other sliders below it), or whether it only affects an individual parameter (such as what might be perceived as luminosity-based noise, rather than color noise)?
    In other words, if Strength is set to zero, but Reduce Color Noise is set to 100%, does the color noise reduction effectively become zero or 100%?
    Neither the Help Menu nor three of the aftermarket books I have definitively addresses this. There are further redundancies regarding this "Strength" slider when advanced mode is turned on: for instance, if Strength on the "front" panel is set to 0, but 9 on the individual channel panels, what is the effective strength?
    Thanks in advance -

    Yes I'm sure it will work great for you.
    The iFrame format is something Apple has come up with. The reason for its existence is unknown to me so I can only speculate. But it seems to me that Apple "invented" this format in order to have devices such as Ipod/Ipad/Iphone/Ixxx create clips that are editable on consumer hardware such as already mentioned devices but also standard Mac computers, without the need for format conversion.
    iMovie converts most input formats during import, which takes a lot of time, and this need for conversion often comes as a surprise to most people new to home video editing.
    iFrame has a resolution of 960x540 which is long way from the common standards of 1920x1080 and 1280x720. If your end target is YouTube however, this may not be too bad though. However if you intend to go with YouTube HD, you may find iFrame footage to look wrong since they are effectively upscaled to a higher resolution.
    Technically iFrame uses the H.264 algorithm, a smaller frame size (960x540) and a rather low compression scheme. This will result in large files, but the plus side is that the files are ready for editing without the need for any conversion and iMovie will natively edit the files.

  • Basic Questions About Compiling Source

    Hi!
    I have some very basic questions about compiling source on 10.6. BTW, if the unix discussions still exist, they've hidden them pretty well, so I hope I'm in the right place for this!
    First off, you simply cd to the source dir, wherever it may be - in my case ~/Downloads/source/  - and during the install process, everything will be installed in its proper dir, right?
    How do you know which compiler to use? There seem to be several: make, gmake, gcc, g++, etc...
    Once you do figure out which compiler to run, the process is supposed to go like this, right?
    ./configure
    make (or whatever)
    make install
    But this doesn't always work for me. For instance, I'm trying to compile 'arm', but it doesn't seem to have a 'configure' script.
    $ ls ~/Downloads/arm
    ChangeLog
    README
    armrc.sample
    setup.py
    LICENSE
    arm
    install
    /src
    Maybe it's that 'setup.py' file? What are you supposed to do?
    Of course, it's not only this one that's given me trouble. Sometimes the readme will say I have to edit a certain file for my system. Are there just a few standard changes you always make? Or is it...how can I put it...complicated? How do you find out what's needed in those cases?
    OS 10.6.8
    Xcode 3.2.4
    Python 2.7

    sudont wrote:
    I have some very basic questions about compiling source on 10.6. BTW, if the unix discussions still exist, they've hidden them pretty well, so I hope I'm in the right place for this!
    This is the place for UNIX discussions. If you have developer-related questions, there is a forum dedicated to that as well: Developer Forums
    First off, you simply cd to the source dir, wherever it may be - in my case ~/Downloads/source/  - and during the install process, everything will be installed in its proper dir, right?
    Yes. Hopefully the project you want to install follows standard conventions. If so, you can do "./configure", then "make", and finally "sudo make install" to install the software into "/usr/local".
    How do you know which compiler to use? There seem to be several: make, gmake, gcc, g++, etc...
    The make file will figure that stuff out.
    Once you do figure out which compiler to run, the process is supposed to go like this, right?
    ./configure
    make (or whatever)
    make install
    Yes, with the addition of "sudo" before "make install" because "/usr/local" is owned by root.
    But this doesn't always work for me. For instance, I'm trying to compile 'arm', but it doesn't seem to have a 'configure' script.
    $ ls ~/Downloads/arm
    ChangeLog
    README
    armrc.sample
    setup.py
    LICENSE
    arm
    install
    /src
    arm? You mean "arm (anonymizing relay monitor) - Terminal status monitor for Tor relays." You really don't want to be messing with that stuff. The only people involved with Tor that are trustworthy are US Navy intelligence who have their own uses for it. If you don't understand it as well as they do, best stay away.

  • Basic questions about macbook pro + external monitor

    Hi,
    I have some very basic questions about using a Macbook Pro + external display. I don't actually have them but need to know how things works.
    So, here they are:
    1) Can I use the external display as the main display?
    2) Will the external display run with its resolution or with that of the mbook pro?
    3) Somewhere I read that you cannot keep the macbook pro open and get the full resolution of the external display. Is that true ?
    4) Is it dangerous to keep the mbook closed while using the external display?
    5) Does the usage of the external display impact on mbook performance?
    I know...a lot of questions , but would be nice if someone could help me.
    Thanks.

    Hi - I am presently using an external display.
    To answer your questions in sequence:
    1. Yes you can use the external display as your main display. The way to enable that mode is to put your MacBook Pro to sleep, attach the external display. Wake up your MBPro with the lid closed and you will see the external display as you main display. You can alternatively set the external to "Mirror" your notebook by using preferences/display.
    2. The external display will run at its resolution although you can adjust and calibrate it using Preferences/Display.
    3. Not true. You get max resolution on both displays. Of course you may have to tweak as mentioned above.
    4. Not at all. I use this mode all the time. Just make sure you initially set up as mentioned above and your LCD on the MBPro will stay off.
    5. I have not seen any performance degradation whatsoever.
    Hope this helps.

  • Basic question about Flash video. Please Help

    Hello,
    Sorry for the noob question but I'm struggling with the basic
    understanding about the Flash video.
    I just need to reduce a large video file to a small size with
    a nice quality and the Flash Video Encoder does very god job with
    that. But when I double click the compressed .flv file it opens as
    a blank screen in the stand alone player without playing any video.
    I can use Dreamweaver to produce a web page playing the file, but I
    don't need this file for posting it on a web page, I just want the
    file smaller and to simply play it on my computer or send it to
    others.
    What is the way to do this?
    I appreciate your help.

    It sounds like you're not having problems with the actual
    compression of the videos, just the playback, correct? All you need
    is a standalone player that plays FLVs. Like Quicktime Player plays
    MOVs, and Windows Media Player plays WMVs, you need something to
    play the FLV files. There are many free options available. On a
    mac, I use something called, strangely enough, SWF & FLV
    Player. You can find it here:
    http://mac.eltima.com/freeflashplayer.html
    Just do a search for FLV players and you should find
    something appropriate. The only downside is you'll need to make
    sure anyone you're distributing the videos to also has an FLV
    player. If you're sending your files to just a few people, no big
    deal. If this is for the public in general, you would want to embed
    a Flash video player in an HTML page and send it like that.
    Hope that helps.

  • Question about the chain step name in DEFINE_CHAIN_STEP

    I have questions about the chain step name in DEFINE_CHAIN_STEP:
    1. Can the step name be a number (e.g. "8")?
    2. Should the step name be unique within a chain or across all chains?
    I am having this exception:
    ORA-25448: rule DMUSER.RULE_6_3707 has errors
    ORA-22806: not an object or REF
    After I changed the step names (in DEFINE_CHAIN_STEP), the chain seems to run fine.
    Thanks,
    Denny

    The reason I asked about the step name is to confirm it can handle numbers (it looks it can handle it from the doc).
    Why I changed the step names say from "11" to "21", the error goes away, that puzzled me. Because the way I defined steps and the rules for the steps were exactly the same. Just changing the step names made the error goes away?!
    Thanks.

  • Basic questions about programing for J9 VM

    I need to create a java application to run on a Pocket PC 2003 OS and I'm limited to using IBM's Websphere J9 Virtual Machine. I'm new to using java in this capacity and therefore have lots of questions which I'm guessing are pretty basic. Despite my best efforts, I've found very little to help me online. Below are a couple questions I have that I'm hoping someone can help me with. Even better, if you know of any resources that could help me with these and other questions, I'd love to have them. Thanks in advance.
    1. I'm using standard AWT for the GUI but I'm having problems getting frames, dialogs, etc., to come up in anything less then full screen. setSize() and resize() have no effect, even if I extend the frame and override the setMinimumSize, setPreferredSize, setMaximumSize methods. What do I need to do to get a child window to appear in something less than full screen?
    2. I'd like to be able to add menu's to the buttom toolbar (with the keyboard) but have no idea how I would add something to it. Can someone point me in the right direction?
    3. When my application gets an iconified event I go ahead and call a System.exit() to exit the application. This doesn't kill the java VM though, which continues to run in the background (taking up plenty of memory). If I run my application using the J9w.exe so that it runs without the console, then not only does the VM continue to run, but I have no way to stop it (the running program list can't see it). Since each time I run my application it starts a new VM, it only takes a couple of times before I'm out of memory and have to do a soft reset of the PDA to make things right. Can I kill the VM when I kill my application?
    4. I learn best by looking at example code, but have been unable to find any code people are running on J9. I have the GolfScoreTracker installed and running on my PDA, but the jar file contains only the classes. Since it's supposed to be a demo, I had hoped that the source code would be included, is that hoping too much or is the source code available somewhere? In addition, if you know of any applications out there with available source code that are known to run well on a PocketPC J9 environment I'd appreciate the link.

    Hi there, I saw your questions, im currently developing a java pocket pc application as well and here's what i go so far:
    AWT seem to be hard to use on pocket pc, instead i recommend that you use SWT, which is a technology developed by eclipse. It's already installed on the eclipse plugins, you just need to download the jar and dll files for the pocket pc. They are available at: http://www.eclipse.org/downloads/index.php
    I assume that you already have the J9 working on your device. So you only need to copy the SWT.jar file and the swt-win32-3064.dll to the folder containing the .class files on your device.
    Now, on your java IDE(im using eclipse) Add the SWT.jar library to your project which should be on C:/eclipse/plugins/org.eclipse.swt.win32_3.0.2/ws/win32/swt.jar or something like taht depending on your eclipse root.
    Now you are ready to code some SWT, here is a sample program from Carolyn MacLeod, i modified a few things so it could run on the pocket pc but it's almost the same. Once you coded in eclipse run it, then copy the class file from your desktop to your device(There should be like 4 or 5 classes like sample.class, sample$1.class etc. copy all of them) where you put the jar and dll files(If program does not run you may try to rename the dll file for swt-win32-3050.dll instead of 3064.dll). Now after you have everything set up you need to create the lnk file in order to run the program. On your desktop create a new textfile and write the following on it:
    255#"\Archivos de Programa\J9\PPRO10\bin\j9w.exe" "-jcl:PPRO10" "-cp" "\My
    Documents\Java\swt.jar" ;\My Documents\Java" sample
    Paths depend on your install, and the place where you put your classes and jar file. path for j9w is usually "\Program Files\J9\PPRO10\bin\j9w.exe", and the last word should be the classname.
    Currently this form only displays an image on a canvas, click on the browse button and choose a pic and it will display on the canvas. Im trying to connect the form to an oracle database but no success yet on the device.
    Hope it helps, if you have any questions about the code or something, and I know the answer, please feel free to ask.
    See ya
    import org.eclipse.swt.*;
    import org.eclipse.swt.widgets.*;
    import org.eclipse.swt.layout.*;
    import org.eclipse.swt.events.*;
    import org.eclipse.swt.graphics.*;
    public class sample {
    static Shell shell;
    static Display display;
    static Text dogName;
    static Text textdb;
    static Combo dogBreed;
    static Canvas dogPhoto;
    static Image dogImage;
    static List categories;
    static Text ownerName;
    static Text ownerPhone;
    static String[] FILTER_EXTS = {"*.jpg"};
    public static void main(String[] args) {
    display = new Display();
    shell = new Shell(display, SWT.RESIZE | SWT.CLOSE);
    Menu menu = new Menu(shell, SWT.BAR);
    shell.setText("Dog ShowS Entry");
    shell.setMenuBar(menu);
    GridLayout gridLayout = new GridLayout();
    gridLayout.numColumns = 3;
    shell.setLayout(gridLayout);
    new Label(shell, SWT.NONE).setText("Dog's NameS:");
    dogName = new Text(shell, SWT.SINGLE | SWT.BORDER);
    GridData gridData = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
    gridData.horizontalSpan = 2;
    gridData.widthHint = 60;
    dogName.setLayoutData(gridData);
    new Label(shell, SWT.NONE).setText("Breed:");
    dogBreed = new Combo(shell, SWT.NONE);
    dogBreed.setItems(new String [] {"Collie", "Pitbull", "Poodle", "Scottie"});
    dogBreed.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
    Label label = new Label(shell, SWT.NONE);
    label.setText("Categories");
    label.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
    new Label(shell, SWT.NONE).setText("Photo:");
    dogPhoto = new Canvas(shell, SWT.BORDER);
    gridData = new GridData(GridData.FILL_BOTH);
    gridData.widthHint = 60;
    gridData.verticalSpan = 3;
    dogPhoto.setLayoutData(gridData);
    dogPhoto.addPaintListener(new PaintListener() {
    public void paintControl(final PaintEvent event) {
    if (dogImage != null) {
    event.gc.drawImage(dogImage, 0, 0);
    categories = new List(shell, SWT.MULTI | SWT.BORDER | SWT.V_SCROLL);
    categories.setItems(new String [] {
    "Best of Breed", "Prettiest Female", "Handsomest Male",
    "Best Dressed", "Fluffiest Ears", "Most Colors",
    "Best Performer", "Loudest Bark", "Best Behaved",
    "Prettiest Eyes", "Most Hair", "Longest Tail",
    "Cutest Trick"});
    gridData = new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_FILL);
    gridData.widthHint = 60;
    gridData.verticalSpan = 4;
    int listHeight = categories.getItemHeight() * 12;
    Rectangle trim = categories.computeTrim(0, 0, 0, listHeight);
    gridData.heightHint = trim.height;
    categories.setLayoutData(gridData);
    Button browse = new Button(shell, SWT.PUSH);
    browse.setText("BrowsePic");
    gridData = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
    gridData.widthHint = 60;
    browse.setLayoutData(gridData);
    browse.addSelectionListener(new SelectionAdapter() {
         public void widgetSelected(SelectionEvent event) {
              FileDialog dialog = new FileDialog(shell, SWT.OPEN);
              dialog.setFilterExtensions(new String[] {"*.*"});
              String fileName = dialog.open();
    if (fileName != null) {
    dogImage = new Image(display, fileName);
    shell.redraw();
    Button delete = new Button(shell, SWT.PUSH);
    delete.setText("No action");
    gridData = new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_BEGINNING);
    gridData.widthHint = 60;
    delete.setLayoutData(gridData);
    delete.addSelectionListener(new SelectionAdapter() {
    public void widgetSelected(SelectionEvent event) {
    Button enter = new Button(shell, SWT.PUSH);
    enter.setText("No action");
    gridData = new GridData(GridData.HORIZONTAL_ALIGN_END);
    gridData.horizontalSpan = 3;
    enter.setLayoutData(gridData);
    enter.addSelectionListener(new SelectionAdapter() {
    public void widgetSelected(SelectionEvent event) {
         shell.open();
         while (!shell.isDisposed()) {
              if (!display.readAndDispatch())
                   display.sleep();
         display.dispose();
    if (dogImage != null) {
    dogImage.dispose();
    }

Maybe you are looking for

  • Report for viewing Sales order no against delivery date & actual GI date

    Hi Experts, Is there any report for viewing Sales order no against delivery date & *actual GI date* Because in VL06F , i can only able to get planned GI. Please guide regarding the same where i can get 'ACTUAL GI DATE ' against above combination . Re

  • Receiver file adapter corrupting characters

    Hi all, We have an outbound article/material interface from R/3 that goes through XI 3.0 NW04 SP17 to create a flat file. The data contains characters such as ž and š from the Czech Republic character set. As both our R/3 and XI systems are both Unic

  • Keyboard and Mouse Frozen after wake from Hibernate

    My keyboard and mouse are frozen when laptop awakes from hibernate. Running XP Pro SP3 with latest drivers etc

  • PERFORMANCE UPDATE 1.0 just released via Software Update!

    I just got a "Performance Update" through Software Update that states it is provided to "Fix hard-drive related pauses experienced by a "small number" of users". I received this update on ALL of my machines that are running Snow Leopard, so it doesn'

  • Access problem

    this is the first time i've ever had this problem. it just started this morning, so i don't know if it's a server problem, DW8, or what. please go to: http://clerccenter.gallaudet.edu/index2.html what i did was open up in DW8 the above page, only it