Warning this is very long code but i need help to see if I am on right trac

I have done all the following code myself and it is the buisiness layer for my application. I have tried to follow recommendations on previous posts and I would like to be told where I can clean up my code and how? This is not complete and it looks very long to me but I need help in order to be better. There are 4 button vlivks and I have not completed them all. The criteria for application is that phonebook will accept new entries if they have names surnames and phone numbers that are not longer than 10 characters for display purposes but can change this. No duplicates are allowed. No editing of a existing entry must lead to a duplicate entry either. No new entry or edit may result in a new contact having no phone numbers.
Many thanks for your time in advance,.....
import javax.swing.JOptionPane;
import java.util.ArrayList;
public class Contact
{// Start of the Contact class
     ArrayList<ContactDetails> phoneList = new ArrayList<ContactDetails>();          // To hold all the contacts
     ArrayList<ContactDetails> searchList = new ArrayList<ContactDetails>();          // To hold all contacts that return true on search
     ArrayList<ContactDetails> list = new ArrayList<ContactDetails>();
     String newName;                                                                                // To hold the new name
     String newSurname;                                                                           // to hold the new surname
     String newHome;                                                                                // To hold the new home number if any
     String newWork;                                                                                // To hold the new work number
     String newCell;                                                                                // To hold the new cell number
     final int MAX_LENGTH = 10;
     public boolean addToPhoneList;                                                            // Sets to false if there is an invalid entry
     public boolean addToSearchList;                                                            // Sets to false if there is an invlid search
     public boolean modifyContact;                                                            // Sets to false if there is an invalid modification
     // Method to create a new contact
     public void createNew()
     {// Start of create new()
          addToPhoneList = true;                                                                 // Set boolean to true each time the method is executed
          getNewContactsName();                                                                 // Get new name
          if(addToPhoneList == false)
               createNew();
               return;
          getNewContactsSurname();                                                            //Get new surname
          if(addToPhoneList == false)
               createNew();
               return;
          String checkName = newName;                                                            //Creates copies to be used in the checkIfDuplicate method
          String checkSurname = newSurname;
          addToPhoneList = checkIfDuplicate(checkName, checkSurname);                    //Check if the entries are duplicate
          if(addToPhoneList == false)
               createNew();
               return;
          getNewContactsHomeNum();                                                            // Get new home number
          if(addToPhoneList == false)
               createNew();
               return;
          getNewContactsWorkNum();                                                            // Get new work number
          if(addToPhoneList == false)
               createNew();
               return;
          getNewContactsCellNum();                                                            // Get new cell number
          if(addToPhoneList == false)
               createNew();
               return;
          checkAtLeastOneNumEntered();                                                       // Check that at least one phone number was entered
          if(addToPhoneList == true)
               updateListWithNew();
     }// End of createNew()
     // Method to search for an existing contact
     public void searchExisting()
     {// Start of searchExisting()
          addToSearchList = true;                                                                 // Set the boolean true
          searchList.clear();                                                                      // Clear list from any previous searches
          if(phoneList.size() > 0)                                                            // Check if any contacts are in the list
               getExistingDetailsAndSearch();                                                  // If there are entries then continue to search
          else
               JOptionPane.showMessageDialog(null,"There are no contacts to search for. Please use this option when you have added a contact to the list.","Error",JOptionPane.ERROR_MESSAGE);
     }// End of searchExisting()
     // Method to modify an existing contact
     public void modifyExisting()
     {// Start of modifyExisting()
          modifyContact = true;                                                                 // Set the boolean to true
          if(phoneList.size() <= 0)                                                            // Check if the phonelist is not empty
               JOptionPane.showMessageDialog(null,"There are no contacts to modify. Please use this option when there have been contacts added to the list.","Error",JOptionPane.ERROR_MESSAGE);
          else
               getExistingDetailsAndModify();                                                  // If phonelist not emty continue to modify method
     }// End of modifyExisting()
     //Method to delete a contact from the list
     public void deleteExisting()
     //Method to get new contacts name
     public void getNewContactsName()
          newName = JOptionPane.showInputDialog("Please enter the new contacts name or press cancel to exit without saving.");
          if(newName == null)
               finish();
          if(newName.trim().length()<=0)
               JOptionPane.showMessageDialog(null,"You have not entered a name. Please try again.","Error",JOptionPane.ERROR_MESSAGE);
               addToPhoneList = false;
               return;
          addToPhoneList = checkLengthValid(newName, "name");
     //Method to get a new contacts surname
     public void getNewContactsSurname()
          newSurname = JOptionPane.showInputDialog("Please enter the new contacts surnname or press cancel to exit without saving.");
          if(newSurname == null)
               finish();
          addToPhoneList = checkLengthValid(newSurname, "surname");
     //Method to get a new contacts home number
     public void getNewContactsHomeNum()
          newHome = JOptionPane.showInputDialog("Please enter the new contacts home number or press cancel to exit without saving.");
          if(newHome == null)
               finish();
          if(newHome.trim().length() > 0)
               try
                    Long homeNum = Long.parseLong(newHome);
               catch(Exception e)
                    JOptionPane.showMessageDialog(null,"You may only use numbers for a valid phone number. Please try again.","Error",JOptionPane.ERROR_MESSAGE);
                    addToPhoneList = false;
                    return;
          addToPhoneList = checkLengthValid(newHome, "home number");
     //Method to get a new contacst work number
     public void getNewContactsWorkNum()
          newWork = JOptionPane.showInputDialog("Please enter the new contacts work number or press cancel to exit without saving");
          if(newWork == null)
               finish();
          if(newWork.trim().length()> 0)
               try
                    Long workNum = Long.parseLong(newWork);
               catch(Exception e)
                    JOptionPane.showMessageDialog(null,"You may only use numbers for a valid number. Please try again.","Error",JOptionPane.ERROR_MESSAGE);
                    addToPhoneList = false;
                    return;
          addToPhoneList = checkLengthValid(newWork, "work number");
     //Method to get a new contacts cell number
     public void getNewContactsCellNum()
          newCell = JOptionPane.showInputDialog("Please enter the new contacts cell number or press cancel to exit without saving");
          if(newCell == null)
               finish();
          if(newCell.trim().length() > 0)
               try
                    Long cellNum = Long.parseLong(newCell);
               catch(Exception e)
                    JOptionPane.showMessageDialog(null,"You may only use numbers for a valid number. Please try again.","Error",JOptionPane.ERROR_MESSAGE);
                    addToPhoneList = false;
                    return;
          addToPhoneList = checkLengthValid(newCell, "cell number");
     //Method to get the details for an existing contact
     public void getExistingDetailsAndSearch()
          String existingName = getExistingName("search for");
          if(existingName == null)
               addToSearchList = false;
               return;
          if(existingName.length()<=0)
               JOptionPane.showMessageDialog(null,"You have not entered a name please try again","Error",JOptionPane.ERROR_MESSAGE);
               addToSearchList = false;
               searchExisting();
          String existingSurname = getExistingSurname();
               if(existingSurname == null)
                    return;
          if(addToSearchList == true)
               searchAndAddIfFound(existingName, existingSurname);
     //Method to get existing details and modify contact
     public void getExistingDetailsAndModify()
          String existingName = getExistingName("modify");
          if(existingName == null)
               modifyContact = false;
               return;
          if(existingName.length()<=0)
               JOptionPane.showMessageDialog(null,"You have not entered a name please try again","Error",JOptionPane.ERROR_MESSAGE);
               modifyContact = false;
               modifyExisting();
          String existingSurname = getExistingSurname();
               if(existingSurname == null)
                    return;
          if(modifyContact == true)
               getContactBySearch(existingName.trim().toUpperCase(), existingSurname.trim().toUpperCase());
     //Method to get the contact from list and modify details
     public void getContactBySearch(String currentName, String currentSurname)
          int count = 0;
          int numFound = 0;
          for(ContactDetails cd: phoneList)
               cd = phoneList.get(count);
               if((cd.name.equals(currentName))&&(cd.surname.equals(currentSurname)))
                    numFound ++;
                    changeDetails(cd);
               count ++;
          if(numFound <= 0)
               JOptionPane.showMessageDialog(null,"No contacts matching the name and surname you entered found. Press the modify button to try again.","Information",JOptionPane.INFORMATION_MESSAGE);
     //Method to get existing contacts name
     public String getExistingName(String whatWasClicked)
          String name = JOptionPane.showInputDialog("Please enter the contacts name that you wish to "+whatWasClicked);
          return name;
     //Method to get an existing contacts surname
     public String getExistingSurname()
          String surname = JOptionPane.showInputDialog("Please enter the contacts surname.");
          return surname;
     //Method to change the details of contact
     public void changeDetails(ContactDetails conToChange)
          String currentName = conToChange.name;
          String currentSurname = conToChange.surname;
          String currentHome = conToChange.home;
          String currentWork = conToChange.work;
          String currentCell = conToChange.cell;
          String newNameForContact = getNewModName(currentName);
          if(modifyContact == false)
               modifyExisting();
               return;
          String newSurnameForContact = getNewModSurname(currentSurname);
          if(modifyContact == false)
               modifyExisting();
               return;
          String newHomeForContact = getNewModHome(currentHome);
          if(modifyContact == false)
               modifyExisting();
               return;
          String newWorkForContact = getNewModWork(currentWork);
          if(modifyContact == false)
               modifyExisting();
               return;
          String newCellForContact = getNewModCell(currentCell);
          if(modifyContact == false)
               modifyExisting();
               return;
          if(modifyContact == true)
               conToChange.name = newNameForContact;
     //Method to get the modified name
     public String getNewModName(String currentName)
          String newModifiedName = JOptionPane.showInputDialog("Please enter the new name for contact or press cancel to keep it as is.");
          if(newModifiedName == null)
               return currentName;
          if(newModifiedName.trim().length() <= 0)
               JOptionPane.showMessageDialog(null,"You may not replace the existing name with a blank name. Please try again.","Error",JOptionPane.ERROR_MESSAGE);
               modifyContact = false;
               return currentName;
          modifyContact = checkLengthValid(newModifiedName, "modified name");
          return newModifiedName;
     //Method to get the modified surname
     public String getNewModSurname(String currentSurname)
          String newModifiedSurname = JOptionPane.showInputDialog("Please enter the new surname for the contact or press cancel to keep it as is.");
          if(newModifiedSurname == null)
               return currentSurname;
          modifyContact = checkLengthValid(newModifiedSurname, "modified surname");
          if(modifyContact == false)
               JOptionPane.showMessageDialog(null,"Surname not changed.","Information",JOptionPane.INFORMATION_MESSAGE);
               return currentSurname;
          modifyContact = checkLengthValid(newModifiedSurname, "modified surname");
          return newModifiedSurname;
     //Method to search and update the list with a succesfull search
     private void searchAndAddIfFound(String name, String surname)
          int count = 0;
          int numFound = 0;
          for(ContactDetails cd: phoneList)
               cd = phoneList.get(count);
               if(cd.name.equals(name.trim().toUpperCase()))
                    numFound ++;
                    searchList.add(cd);
               count ++;
          if(numFound <= 0)
               JOptionPane.showMessageDialog(null,"No contacts were found matching the dat you entered.","Information",JOptionPane.INFORMATION_MESSAGE);
          else
               list.clear();
               list.addAll(searchList);
     //Method that check all entries are a valid logical length
     //Method is based on assumption that a normal name, surname, and phone numbers are not longer than 10 characters long.
     //IF This method is changed please change the layout in the GUI as this is also set to fit with the layout that gives a neat //apperance
     private boolean checkLengthValid(String detailEntered, String whatWasEntered)
          boolean validLength = true;
          if(detailEntered.trim().length() >= MAX_LENGTH)
               JOptionPane.showMessageDialog(null,"The " +whatWasEntered+" you entered is too long. Please try again and use a "+whatWasEntered+" that is less than "+MAX_LENGTH+" characters long.","Error",JOptionPane.ERROR_MESSAGE);
               validLength = false;
          return validLength;
     private void finish()
          System.exit(0);
     //Method to update the list with a new entry
     private void updateListWithNew()
          try
               ContactDetails cd = new ContactDetails();
               cd.name = newName.trim().toUpperCase();
               cd.surname = newSurname.trim().toUpperCase();
               cd.home = newHome.trim();
               cd.work = newWork.trim();
               cd.cell = newCell.trim();
               phoneList.add(cd);
               JOptionPane.showMessageDialog(null,"Contact succesfully entered. To save this change press exit to save or use the save option in the toolbar menu.","Information",JOptionPane.INFORMATION_MESSAGE);
          catch(Exception e)
               JOptionPane.showMessageDialog(null,"Failed to add contact to list. If problem persists please contact the software developer.","Error",JOptionPane.ERROR_MESSAGE);
          list.clear();
          list.addAll(phoneList);
     //Method to check for duplicate
     public boolean  checkIfDuplicate(String nameToCheck, String surnameToCheck)
          int count = 0;
          boolean valid = true;
          for(ContactDetails cd : phoneList)
               cd = phoneList.get(count);
               if(((nameToCheck.trim().toUpperCase()).equals(cd.name))&&((surnameToCheck.trim().toUpperCase()).equals(cd.surname)))
                    JOptionPane.showMessageDialog(null,"You may not enter a duplicate contact. Please try again and change the name and surname.","Error",JOptionPane.ERROR_MESSAGE);
                    valid = false;
                    break;
               count ++;
          return valid;
     //Method to check that at least one phone number exists for contact
     public void checkAtLeastOneNumEntered()
          if((newHome.trim().length()<=0)&&(newWork.trim().length()<=0)&&(newCell.trim().length()<=0))
               JOptionPane.showMessageDialog(null,"You have not entered any phone number at all. You must enter at least one phone number for a new contact.","Error",JOptionPane.ERROR_MESSAGE);
               addToPhoneList = false;
     //Method that returns the list to the GUI
     public ArrayList<ContactDetails> getList()
          return list;
}

Should I start over from scratch? Can I get help with links to tutorials on following? How to create a java CRUD application (google not useful) and how to layer in java(google not useful)
This is my pres layer as is is this wrong too?
     Filename:     ContactsListInterface.java
     Date:           16 March 2008
     Programmer:     Yucca Nel
     Purpose:     Provides a GUI for entering names and contact numbers into a telephone directory.
                    Also allows options for searching for a specific name and deleting of data from the record
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.text.*;
import java.io.*;
import java.util.*;
import java.text.*;
public class Phonebook1 extends JFrame implements ActionListener
{ //start of class
     // construct fields, buttons, labels,text boxes, ArrayLists etc
     JTextPane displayPane = new JTextPane();
     JLabel listOfContacts = new JLabel("List Of Contacts");               // creates a label for the scrollpane
     JButton createButton = new JButton("Create");
     JButton searchButton = new JButton("Search");
     JButton modifyButton = new JButton("Modify");
     JButton deleteButton = new JButton("Delete");
     Contact c = new Contact();
     ArrayList<ContactDetails> contactList = c.getList();
     // create an instance of the ContactsListInterface
     public Phonebook1()
     { // start of cli()
          super("Phonebook Interface");
     } // end of cli()
     public JMenuBar createMenuBar()
     { // start of the createMenuBar()
          // construct and populate a menu bar
          JMenuBar mnuBar = new JMenuBar();                              // creates a menu bar
          setJMenuBar(mnuBar);
          JMenu mnuFile = new JMenu("File",true);                         // creates a file menu in the menu bar which is visible
               mnuFile.setMnemonic(KeyEvent.VK_F);
               mnuFile.setDisplayedMnemonicIndex(0);
               mnuFile.setToolTipText("File Options");
               mnuBar.add(mnuFile);
          JMenuItem mnuFileExit = new JMenuItem("Save And Exit");     // creates an exit option in the file menu
               mnuFileExit.setMnemonic(KeyEvent.VK_X);
               mnuFileExit.setDisplayedMnemonicIndex(1);
               mnuFileExit.setToolTipText("Close Application");
               mnuFile.add(mnuFileExit);
               mnuFileExit.setActionCommand("Exit");
               mnuFileExit.addActionListener(this);
          JMenu mnuEdit = new JMenu("Edit",true);                         // creates a menu for editing options
               mnuEdit.setMnemonic(KeyEvent.VK_E);
               mnuEdit.setDisplayedMnemonicIndex(0);
               mnuEdit.setToolTipText("Edit Options");
               mnuBar.add(mnuEdit);
          JMenu mnuEditSort = new JMenu("Sort",true);                    // creates an option for sorting entries
               mnuEditSort.setMnemonic(KeyEvent.VK_S);
               mnuEditSort.setDisplayedMnemonicIndex(0);
               mnuEdit.add(mnuEditSort);
          JMenuItem mnuEditSortByName = new JMenuItem("Sort By Name");          // to sort entries by name
               mnuEditSortByName.setMnemonic(KeyEvent.VK_N);
               mnuEditSortByName.setDisplayedMnemonicIndex(8);
               mnuEditSortByName.setToolTipText("Sort entries by first name");
               mnuEditSortByName.setActionCommand("Name");
               mnuEditSortByName.addActionListener(this);
               mnuEditSort.add(mnuEditSortByName);
          JMenuItem mnuEditSortBySurname = new JMenuItem("Sort By Surname");     // to sort entries by surname
               mnuEditSortBySurname.setMnemonic(KeyEvent.VK_R);
               mnuEditSortBySurname.setDisplayedMnemonicIndex(10);
               mnuEditSortBySurname.setToolTipText("Sort entries by surname");
               mnuEditSortBySurname.setActionCommand("Surname");
               mnuEditSortBySurname.addActionListener(this);
               mnuEditSort.add(mnuEditSortBySurname);
          JMenu mnuHelp = new JMenu("Help",true);                                        // creates a menu for help options
               mnuHelp.setMnemonic(KeyEvent.VK_H);
               mnuHelp.setDisplayedMnemonicIndex(0);
               mnuHelp.setToolTipText("Help options");
               mnuBar.add(mnuHelp);
          JMenuItem mnuHelpHelp = new JMenuItem("Help");                              // creates a help option for help topic
               mnuHelpHelp.setMnemonic(KeyEvent.VK_P);
               mnuHelpHelp.setDisplayedMnemonicIndex(3);
               mnuHelpHelp.setToolTipText("Help Topic");
               mnuHelpHelp.setActionCommand("Help");
               mnuHelpHelp.addActionListener(this);
               mnuHelp.add(mnuHelpHelp);
          JMenuItem mnuHelpAbout = new JMenuItem("About");                         // creates a about option for info about api
               mnuHelpAbout.setMnemonic(KeyEvent.VK_T);
               mnuHelpAbout.setDisplayedMnemonicIndex(4);
               mnuHelpAbout.setToolTipText("About this program");
               mnuHelpAbout.setActionCommand("About");
               mnuHelpAbout.addActionListener(this);
               mnuHelp.add(mnuHelpAbout);
          return mnuBar;
     } // end of the createMenuBar()
     // create the content pane
     public Container createContentPane()
     { // start of createContentPane()
          //construct and populate panels and content pane
          JPanel labelPanel = new JPanel(); // panel is only used to put the label for the textpane in
               labelPanel.setLayout(new FlowLayout());
               labelPanel.add(listOfContacts);
          JPanel displayPanel = new JPanel();// panel is used to display all the contacts and thier numbers
               setTabsAndStyles(displayPane);
               displayPane = addTextToTextPane();
               displayPane.setEditable(false);
          JScrollPane scrollPane = new JScrollPane(displayPane);
               scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS); // pane is scrollable vertically
               scrollPane.setWheelScrollingEnabled(true);// pane is scrollable by use of the mouse wheel
               scrollPane.setPreferredSize(new Dimension(400,320));
          displayPanel.add(scrollPane);
          JPanel workPanel = new JPanel();// panel is used to enter, edit and delete data
               workPanel.setLayout(new FlowLayout());
               workPanel.add(createButton);
                    createButton.setToolTipText("Create a new entry");
                    createButton.addActionListener(this);
               workPanel.add(searchButton);
                    searchButton.setToolTipText("Search for an entry by name number or surname");
                    searchButton.addActionListener(this);
               workPanel.add(modifyButton);
                    modifyButton.setToolTipText("Modify an existing entry");
                    modifyButton.addActionListener(this);
               workPanel.add(deleteButton);
                    deleteButton.setToolTipText("Delete an existing entry");
                    deleteButton.addActionListener(this);
          labelPanel.setBackground(Color.red);
          displayPanel.setBackground(Color.red);
          workPanel.setBackground(Color.red);
          // create container and set attributes
          Container c = getContentPane();
               c.setLayout(new BorderLayout(30,30));
               c.add(labelPanel,BorderLayout.NORTH);
               c.add(displayPanel,BorderLayout.CENTER);
               c.add(workPanel,BorderLayout.SOUTH);
               c.setBackground(Color.red);
          // add a listener for the window closing and save
          addWindowListener(
               new WindowAdapter()
                    public void windowClosing(WindowEvent e)
                         int answer = JOptionPane.showConfirmDialog(null,"Are you sure you would like to save all changes and exit?","File submission",JOptionPane.YES_NO_OPTION);
                         if(answer == JOptionPane.YES_OPTION)
                              System.exit(0);
          return c;
     } // end of createContentPane()
     protected void setTabsAndStyles(JTextPane displayPane)
     { // Start of setTabsAndStyles()
          // set Font style
          Style fontStyle = StyleContext.getDefaultStyleContext().getStyle(StyleContext.DEFAULT_STYLE);
          Style regular = displayPane.addStyle("regular", fontStyle);
          StyleConstants.setFontFamily(fontStyle, "SansSerif");
          Style s = displayPane.addStyle("bold", regular);
          StyleConstants.setBold(s,true);
     } // End of setTabsAndStyles()
     public JTextPane addTextToTextPane()
     { // start of addTextToTextPane()
          int numberOfEntries = contactList.size();
          int count = 0;
          Document doc = displayPane.getDocument();
          try
          { // start of tryblock
               // clear previous text
               doc.remove(0,doc.getLength());
               // insert titles of columns
               doc.insertString(0,"NAME\tSURNAME\tHOME NO\tWORK NO\tCELL NO\n",displayPane.getStyle("bold"));
               for(ContactDetails cd : contactList)
                    cd = contactList.get(count);
                    doc.insertString(doc.getLength(),cd.name+"\t"+cd.surname+"\t"+cd.home+"\t"+cd.work+"\t"+cd.cell+"\n",displayPane.getStyle("regular"));
                    count ++;
          } // end of try block
          catch(BadLocationException ble)
          { // start of ble exception handler
               System.err.println("Could not insert text.");
          } // end of ble exception handler
          return displayPane;
     } // end of addTextToTextPane()
     // code to process user clicks
     public void actionPerformed(ActionEvent e)
     { // start of actionPerformed()
          String arg = e.getActionCommand();
          // user clicks create button
          if(arg.equals("Create"))
               c.createNew();                                                  // method to create a new Contact
               addTextToTextPane();
          if(arg.equals("Search"))
               c.searchExisting();                                             // method to search for an existing entry
               addTextToTextPane();
          if(arg.equals("Modify"))
               c.modifyExisting();                                             // method to modify contact
               addTextToTextPane();
          if(arg.equals("Delete"))
               c.deleteExisting();
               addTextToTextPane();
          if(arg.equals("Exit"))
     } // end of actionPerformed()
     // method to create a new contact
     public static void main(String[] args)
     { // start of main()
          // Set look and feel of interface
          try
          { // start of try block
               UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
          } // end of try block
          catch(Exception e)
          { // start of catch block
               JOptionPane.showMessageDialog(null,"There was an error in setting the look and feel of this application","Error",JOptionPane.INFORMATION_MESSAGE);
          } // end  of catch block
          Phonebook1 pb = new Phonebook1();
          pb.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
          pb.setJMenuBar(pb.createMenuBar());
          pb.setContentPane(pb.createContentPane());
          pb.setSize(520,500);
          pb.setVisible(true);
          pb.setResizable(false);
     } // end of main()
} //end of class

Similar Messages

  • Sorry if this is a stupid question, but I need help

    I would like to e-mail songs that I bought on my iTunes account from one computer to another. I am really computer challenged and I need help doing this. Can anyone give me basic instructions on how to e-mail songs? Thanks!!

    Hi Gabee,
    Welcome to Apple Discussions
    You may want to look at Knowledge Base Document #93063 on How to copy music between authorized computers. You can only have 5 authorized computers.
    Jon
    Mac Mini 1.42Ghz, iPod (All), Airport (Graphite & Express), G4 1.33Ghz iBook, G4 iMac 1Ghz, G3 500Mhz, iBook iMac 233Mhz, eMate, Power Mac 5400 LC, PowerBook 540c, Macintosh 128K, Apple //e, Apple //, and some more...  Mac OS X (10.4.5) Moto Razr, iLife '06, SmartDisk 160Gb, Apple BT Mouse, Sight..

  • I know this is a common thing, but i need help with half tones

    This is the problem I have . I am trying to make half tones for screen printing so i need to make solid color halftones to cut down on colors( for example doing a 50% black half tone instead of making a new screen for gray).
    I get how to make halftone gradients and rasterize for illustrator, and using the halftone swatches would work if they had them in higher dpi.
    Can someone help me out?

    function(){return A.apply(null,[this].concat($A(arguments)))}
    I am trying to make half tones for screen printing so i need to make solid color halftones to cut down on colors( for example doing a 50% black half tone instead of making a new screen for gray).
    Just fill your gray objects with a 50% tint of the spot color you are printing. In the Print dialog, specify the halftone screen ruling.
    function(){return A.apply(null,[this].concat($A(arguments)))}
    I get how to make halftone gradients and rasterize for illustrator, and using the halftone swatches would work if they had them in higher dpi.
    Assuming you are printing to a PostScript device, you can print as color separations and specify the halftone ruling, angle, and shape for each ink in the Print dialog. You don't have to use any kind of fake halftone such as Pattern Swatch fills.
    JET

  • I am trying to do a full Time Machine Backup to a new external disk. The backup starts, and it says "Time remaining about 4 days." That seems like a very long time, but the real problem is that the computer "logs off" after a few hours, and the b.u. stops

    I am trying to do a full Time Machine Backup to a new external disk. The backup starts, and it says "Time remaining about 4 days." That seems like a very long time, but the real problem is that the computer "logs off" after a few hours, and the backup stops. The system preferences are set to "Never" for Computer sleep and Display sleep. The computer does not ordinarily log off automatically, but it has done this twice since I started the Time Machine backup.

    If you have more than one user account, these instructions must be carried out as an administrator.
    Launch the Console application in any of the following ways:
    ☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.)
    ☞ In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U. The application is in the folder that opens.
    ☞ Open LaunchPad. Click Utilities, then Console in the icon grid.
    Make sure the title of the Console window is All Messages. If it isn't, select All Messages from the SYSTEM LOG QUERIES menu on the left. If you don't see that menu, select
    View ▹ Show Log List
    from the menu bar.
    Enter the word "Starting" (without the quotes) in the String Matching text field. You should now see log messages with the words "Starting * backup," where * represents any of the words "automatic," "manual," or "standard." Note the timestamp of the last such message. Clear the text field and scroll back in the log to that time. Select the messages timestamped from then until the end of the backup, or the end of the log if that's not clear. Copy them (command-C) to the Clipboard. Paste (command-V) into a reply to this message.
    If all you see are messages that contain the word "Starting," you didn't clear the search box.
    If there are runs of repeated messages, post only one example of each. Don't post many repetitions of the same message.
    When posting a log extract, be selective. Don't post more than is requested.
    Please do not indiscriminately dump thousands of lines from the log into this discussion.
    Some personal information, such as the names of your files, may be included — anonymize before posting.

  • Hello. I am having much difficulty using any software drum program. I am trying to use EZ Drummer and the drum programs in Logic, with limited success. I was using them, and they were working, but this is no longer the case. Please help me navigate my way

    Hello.
    I am having much difficulty using any software drum program. I am trying to use EZ Drummer and the drum programs in Logic, with limited success. I was using them, and they were working, but this is no longer the case. Please help me navigate my way through these issues, if possible.
    Thanks.
    Eric

    Aha! I have sorted it.
    For those with similar problems, the solution is this:
    Macintosh HD > Library > Audio > MIDI Drivers
    Then delete DigiDioMidiDriver.plugin

  • Hi, I have found my older ipod guessing 2nd in line from first generation. Music was on a PC, this tower is long gone but i still have my music on this older device. It opens in itunes but I cannot transfer of drag into my itunes library.

    Hi, I have found my older ipod guessing 2nd in line from first generation. Music was Downloaded from BearShare onto a PC, this tower is long gone but i still have my music on this older device. It opens in itunes on my mac laptop but I cannot transfer/send toor of drag into my itunes library. I can only listen to the music from the laptop. If I try to transfer songs to a laptop folder it copies in text. Any suggestions?

    The following user tip is worth checking through:
    Recover your iTunes library from your iPod or iOS device

  • Cannot create new folders on desktop. Cannot drag new items onto desktop. Desktop in Finder opens with Terminal. Not sure if this has anything to do with upgrading to Mavericks but I need help if anyone has ideas. Thank you.

    I can no longer create new folders on my desktop. The option to do that is now light gray on the drop down menu and can't be selected.
    I cannot drag new items onto desktop any longer either.
    The Desktop in Finder opens with Terminal.
    Folders and items on Desktop open and work normally.
    Not sure if this has anything to do with upgrading to Mavericks but I need help if anyone has ideas.
    Thank you.

    Take these steps if the cursor changes from an arrow to a white "prohibited" symbol when you try to move an icon on the Desktop.
    Sometimes the problem may be solved just by logging out or rebooting. Try that first, if you haven't already done it. Otherwise, continue.
    Select the icon of your home folder (a house) in the sidebar of a Finder window and open it. The Desktop folder is one of the subfolders. Select it and open the Info window. In the General section of the window, the Kind will be either Folder  or something else, such as Anything.
    If the Kind is Folder, uncheck the box marked Locked. Close the Info window and test.
    If the Kind is not Folder, make sure the Locked box is not checked and that you have Read & Write privileges in the  Sharing & Permissions section. Then close the Info window and do as follows.
    Back up all data.
    Triple-click anywhere in the line below on this page to select it:
    xattr -d com.apple.FinderInfo Desktop
    Copy the selected text to the Clipboard by pressing the key combination command-C.
    Launch the Terminal application in any of the following ways:
    ☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.)
    ☞ In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U. The application is in the folder that opens.
    ☞ Open LaunchPad. Click Utilities, then Terminal in the icon grid.
    Paste into the Terminal window (command-V). You should get a new line ending in a dollar sign (“$”). Quit Terminal.
    Relaunch the Finder.
    If the problem is now resolved, and if you use iPhoto, continue.
    Quit iPhoto if it's running. Launch it while holding down the option key. It will prompt you to select a library. Choose the one you want to use (not the Desktop folder.)

  • Have MacBook Pro (ancient) has 2.16 Ghz Intel Core Duo with 1 GB 667 MHz RAM using OS 10.4.11. Can I upgrade OS? If so, how far? And can I add more memory? I realize this is an old laptop but I need to wait to upgrade to new.

    Have MacBook Pro (ancient) has
    2.16 Ghz Intel Core Duo with
    1 GB 667 MHz RAM
    using OS 10.4.11.
    Can I upgrade OS? If so, how far?
    And can I add more memory?
    I realize this is an old laptop but I need to wait to upgrade to new.

    if it is the core duo, mac OS X 10.6.8., max ram 2gb.

  • This is a stupid question but I needed to ask because I don't want to go there and not being able to buy it, but can I get the iPhone 5 brought straight there when I go to an apple store?

    This is a stupid question but I needed to ask because I don't want to go there and not being able to buy it, but can I get the iPhone 5 brought straight there when I go to an apple store?

    And I meant go to the apple store physically without preordering it online, and I meant the Southampton one. So could I just stroll in apple store and buy a iPhone 5 in Southampton apple store and buy the iPhone 5 straight away? Because I didn't want to have to wait? I just want to go in and buy it and go out with it, if you guys get what I mean? And felipeV if it is in stock could I just buy it and leave with my iPhone 5?

  • I know this is supposedly not possible, but I need to retrieve a specific voicemail from my iPhone which was also "cleared" from the Deleted Messages box. Any suggestions?

    I know this is supposedly not possible, but I need to retrieve a specific voicemail from my iPhone which was also "cleared" from the Deleted Messages box. Any suggestions?
    This is highly important. I know the number from which the voicemail arrived, but have not been able to figure out how to retrieve it. I accidentally had the voicemail in the Deleted Messages folder, and then Cleared this folder. If there is any possible way I might be able to retrieve this message, even if there is a cost associated with it, please help me.
    Thank you.

    I think you maybe able to restore from backup if that voicemail was included in the backup. http://support.apple.com/kb/HT1766

  • On Windows 7, CS6 all products, but especially need help with ID.  Fonts that are showing in other applications are not showing in ID.

    on Windows 7, CS6 all products, but especially need help with ID.  Fonts that are showing in other applications are not showing in ID.

    The ID Program folder will be relevant to your OS...
    I took a shot and right clicked on my Scripts Samples, choose reveal in Explorer and opened up the ID Program folder.
    As shown, there is a Fonts folder.
    Drag/Copy/Paste fonts to this folder.

  • My iphone 4S wont allow me to restore a bckup of icloud it has just rebooted the os and for over 24 hours i have been trying to fix it i use this phone for my job so i need help

    My iphone 4S wont allow me to restore a bckup of icloud it has just rebooted the os and for over 24 hours i have been trying to fix it i use this phone for my job so i need help. when i try to restore it says "Your iphone could not be activated becuase the activation server is unavailable, If the problom presests goto apple.com/support"   It has done this for 27 hours now PLEASE HELP!!!!!!!!!

    - Connect the iPod to the computer and see if iTunes sees it. If it sees it try to get the photos off the iPod.
    - Next let the battery fully drain. It will likely take days. After charging for at least an hour try again
    - Last, make an appointment at the Genius Bar of an Apple store.

  • After many months of non-use, when I opened Photoshop CS4 Extended, I got an error message 148.3.  "Licensing for this product has stopped working."  I need help, please.

    After many months of non-use, when I tried to open Photoshop CS4 Extended, I got an error message 148.3.  "Licensing for this product has stopped working."  I need help, please.

    Error "Licensing has stopped working" | Windows
    Error "Licensing has stopped working" | Mac OS
    Mylenium

  • The basic sliders disappeared. Including the Exposure, Contrast, Highlights, Shadows, Whites, Blacks, Clarity and Vibrance Sliders are no longer available. I need help to get them back

    The basic sliders disappeared. Including the Exposure, Contrast, Highlights, Shadows, Whites, Blacks, Clarity and Vibrance Sliders are no longer available. I need help to get them back on the program. 
    I can't figure out where the sliders went and how to put them back on. Anyone have any suggestions?
    Thanks

    In Lightroom, go to the Window menu, select Panels, select Basic

  • CAN YOU HELP?? (This is a long one, but please be patient and read it through before answering)

    Basically, I screwed up my MAC in the terminal a few months ago. I don't know what I did, but it basically started erasing all the documents, data, bookmarks, extensions, literally everything from my desktop too. And I could not undo this.
    Although, when I first got my laptop, I thought it would be a good idea to have different user accounts for different things (i.e. one user account for my personal life, one for professional life, one for school, etc). So after my documents and data and everything on my desktop started disappearing, I feared the worst and thought I messed up my entire laptop. Thankfully the entire hard drive wasn't affected---only one user account (called ALEX) was.
    So instead of wiping the mac clean and having to start over (because I would lose all the data from my other user accounts), I decided to make another separate user account to replace the messed up one with. I named this new account "MARS" and made sure to set up the account as an administrator (just like all my other user accounts, save for the Guest account, of course) with all the permissions to make admin changes.
    While still in the ALEX (messed up) account, and after searching forever online, I found that there was a way to change permissions of documents or even folders if they are moved into the "Shared" folder of another user account. Doing this would overwrite the permissions of that folder and all the sub-folders inside. I had a backup of the ALEX account on a Seagate Drive that had most of my itunes music (which is really the only thing I've been trying to get back--that and my bookmarks and chrome extensions), but I found that I couldn't simply backup one user account through time machine--I can only backup an entire computer hard drive.
    Still in the ALEX account, I figured that I could instead solve my problem by transferring the documents and data from the ALEX BACKUP user account to the shared folder in the newly created MARS account, thus overwriting the permissions and getting all my old files back (all my old chrome extensions, documents, pictures, itunes music and movies, desktop, etc), now on the new account.  Just one problem: I couldn't seem to open the new MARS user account (by going to Finder > Macintosh H.D. > Users > MARS) and thus, could not even get to the public folder and move the ALEX BACKUP files into the drop box at least.
    So I switched users, logging into the new MARS account. I opened the Finder window, selected my Macintosh H.D., and opened the Get Info window for the hard drive. I went down to sharing and permissions, unlocked the little padlock to make permission changes, and added all admin users. I then proceeded to change the sharing and permissions to "read & write" for all admins, and selected "apply to enclosed folders" in the little gearbox settings icon (this is all in Get Info). It worked, and I was able to open all the folders from all of my user accounts, but now I couldn't open my own Home folder (the MARS folder in Users that is a picture of a little house), which was baffling to me because I was already logged into the MARS account.
    Then I noticed a little padlock on my home folder (remember that I'm still actively in the MARS account), and also noticed that the Seagate external hard drive I had plugged in (which serves as a giant usb and a time machine backup disk) had the same little padlock. Now when I try to open the user account folder for MARS (either while logged into the MARS account, or logged into any other admin account) or if I try to open the external hard drive, I get this message that says "The folder can't be opened because you don't have permission to see it's contents."
    So now, I can access all my user accounts from anywhere, but I can't access the new MARS account or my external hard drive anymore. So next problem on my list is solving the external hard drive issue. First I went into the Get Info window for the external hard drive, and tried to change the permissions there by unlocking Sharing and Permiss., and changing the settings for each user. Only all the users listed were set to "Custom" and even worse, every time I tried to change it, it automatically bounced back and reverted to "Custom." There was a little check box on the bottom that said "Ignore ownership on this volume" so I tried checking that box and doing the same thing. Also tried simply checking and unchecking the box. Still no luck.
    Time for plan B: I went into disk utility and selected the external hard drive, then went to the First Aid tab. There were four options I could chose from: Verify Disk and Repair Disk (on the right), and Verify Disk Permissions and Repair Disk Permissions (on the left). First I immediately verified and repaired the disk and it said "The drive appears to be ok" after the repair was done. Then I tried to verify and repair the disk permissions, but I can't click on either Verify Disk Permiss. or Repair Disk Permiss. They are both greyed out and unclickable.
    THIS is where I drew a line in the freakin' sand, did NOT read the Latin**, and decided to write this long-*** post in an attempt to find some kind of answer to my dilemma. So if anyone reading hasn't given up and you've reached this sentence with some kind of suggestion in mind, I would extremely appreciate any help I could possibly receive. I've been trying to deal with this situation for months now. Unfortunately my year of Apple Care has expired and I can't talk to any Geniuses in store on the matter, so if the internet is willing enough to help me, I promise to spend more time with it. Maybe even go back to MySpace. ****, I'll start using Google Plus if it means finding an answer. (You see the desperate lengths I'm willing to go to on this.)
    **This is a reference to "Cabin In the Woods," when they're in the basement reading Patience's diary. Then there's a line written in Latin that basically brings zombie-redneck-torture-families back to life. Marty, who's been desperately trying to get them all to just go back upstairs, stops them and says, "Okay, I'm drawin' a line in the f*ckin' sand here; DO NOT READ THE LATIN." If you haven't seen "Cabin In the Woods," I definitely recommend it--it's a hilariously terrific thriller and even Sigourney Weaver shows up at the end.
    Anyways if there's anyone out there who can help me, please!! (I've even got legendary weapons in Borderlands 2 I'd be willing to dupe as payment!!)
    Please leave a reply, if you can. Or send me a message (not sure how this forum works, as I'm a little new to the forum).
    And also, if your answer includes going into the terminal, I can tell you right now that I'll probably be extremely hesitant to go that route (seeing as trying to fix a problem using Terminal is what landed me in this entire mess, in the first place).
    I really look forward to any help I can get. And thanks so much guys, you really make the mac community thrive by helping people out like this!

    I'd still prefer to keep separate user accounts. I never had any issues like this before. The only time I started having a problem was when I was just trying to force empty the trash a few months ago. I came on here looking for a solution and someone posted a way to empty the trash using the terminal. Before then, I hadn't used the terminal for anything--it was just another app in my utilities folder.  (None of this has anything to do with having separate user accounts. Plenty of people with kids make second and third user accounts on their laptops so that multiple people can use one laptop, having more than one user on a laptop is not very difficult.) But thank you, I'll try that out and see if it works!

Maybe you are looking for