List of usage examples for com.jgoodies.forms.factories Borders createEmptyBorder
public static Border createEmptyBorder(String encodedSizes)
From source file:se.streamsource.streamflow.client.ui.administration.policy.AdministratorsView.java
License:Apache License
public AdministratorsView(@Service ApplicationContext context, @Uses AdministratorsModel model) { super(new BorderLayout()); this.model = model; setBorder(Borders.createEmptyBorder("2dlu, 2dlu, 2dlu, 2dlu")); usersAndGroupsModel = model.newUsersAndGroupsModel(); setActionMap(context.getActionMap(this)); administratorList = new JList(new EventListModel<LinkValue>(model.getList())); administratorList.setCellRenderer(new LinkListCellRenderer() { @Override/*w w w.j av a 2 s. com*/ public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { if (value instanceof LinkValue) { Component component = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); component.setEnabled(!"inherited".equals(((LinkValue) value).rel().get())); return component; } else return super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); } }); administratorList.getSelectionModel() .addListSelectionListener(new SelectionActionEnabler(getActionMap().get("remove")) { @Override public boolean isSelectedValueValid(javax.swing.Action action) { return !"inherited".equals(((LinkValue) administratorList.getSelectedValue()).rel().get()); //To change body of overridden methods use File | Settings | File Templates. } }); add(new JScrollPane(administratorList), BorderLayout.CENTER); JPanel toolbar = new JPanel(); toolbar.add(new StreamflowButton(getActionMap().get("add"))); toolbar.add(new StreamflowButton(getActionMap().get("remove"))); add(toolbar, BorderLayout.SOUTH); new RefreshWhenShowing(this, model); }
From source file:se.streamsource.streamflow.client.ui.administration.projects.MembersView.java
License:Apache License
public MembersView(@Service ApplicationContext context, @Uses final MembersModel model) { super(new BorderLayout()); this.membersModel = model; setBorder(Borders.createEmptyBorder("2dlu, 2dlu, 2dlu, 2dlu")); usersAndGroupsModel = membersModel.newUsersAndGroupsModel(); setActionMap(context.getActionMap(this)); membersList = new JXList(new EventListModel<LinkValue>(membersModel.getList())); membersList.setCellRenderer(new LinkListCellRenderer()); add(new JScrollPane(membersList), BorderLayout.CENTER); JPanel toolbar = new JPanel(); toolbar.add(new StreamflowButton(getActionMap().get("add"))); toolbar.add(new StreamflowButton(getActionMap().get("remove"))); add(toolbar, BorderLayout.SOUTH); membersList.getSelectionModel()// ww w . j a va 2s. c o m .addListSelectionListener(new SelectionActionEnabler(getActionMap().get("remove"))); new RefreshWhenShowing(this, membersModel); }
From source file:se.streamsource.streamflow.client.ui.administration.projectsettings.RecipientsView.java
License:Apache License
public RecipientsView(@Service ApplicationContext context, @Uses final RecipientsModel model) { super(new BorderLayout()); this.model = model; setBorder(Borders.createEmptyBorder("2dlu, 2dlu, 2dlu, 2dlu")); setActionMap(context.getActionMap(this)); recipientsList = new JXList(new EventListModel<LinkValue>(model.getList())); recipientsList.setCellRenderer(new LinkListCellRenderer()); add(new JScrollPane(recipientsList), BorderLayout.CENTER); JPanel toolbar = new JPanel(); toolbar.add(new StreamflowButton(getActionMap().get("add"))); toolbar.add(new StreamflowButton(getActionMap().get("remove"))); add(toolbar, BorderLayout.SOUTH); recipientsList.getSelectionModel()//from w w w .j a v a 2 s . c o m .addListSelectionListener(new SelectionActionEnabler(getActionMap().get("remove"))); new RefreshWhenShowing(this, model); }
From source file:se.streamsource.streamflow.client.ui.administration.resolutions.ResolutionsView.java
License:Apache License
public ResolutionsView(@Service ApplicationContext context, @Uses final ResolutionsModel model) { super(new BorderLayout()); this.model = model; setBorder(Borders.createEmptyBorder("2dlu, 2dlu, 2dlu, 2dlu")); ActionMap am = context.getActionMap(this); setActionMap(am);//from w w w . j av a2 s .c o m JPopupMenu options = new JPopupMenu(); options.add(am.get("rename")); options.add(am.get("showUsages")); options.add(am.get("remove")); JScrollPane scrollPane = new JScrollPane(); EventList<LinkValue> itemValueEventList = model.getList(); list = new JList(new EventListModel<LinkValue>(itemValueEventList)); list.setCellRenderer(new LinkListCellRenderer()); scrollPane.setViewportView(list); add(scrollPane, BorderLayout.CENTER); JPanel toolbar = new JPanel(); toolbar.add(new StreamflowButton(am.get("add"))); toolbar.add(new StreamflowButton(new OptionsAction(options))); add(toolbar, BorderLayout.SOUTH); list.getSelectionModel().addListSelectionListener( new SelectionActionEnabler(am.get("remove"), am.get("rename"), am.get("showUsages"))); new RefreshWhenShowing(this, model); }
From source file:se.streamsource.streamflow.client.ui.administration.resolutions.SelectedResolutionsView.java
License:Apache License
public SelectedResolutionsView(@Service ApplicationContext context, @Uses final SelectedResolutionsModel model) { super(new BorderLayout()); this.model = model; setBorder(Borders.createEmptyBorder("2dlu, 2dlu, 2dlu, 2dlu")); ActionMap am = context.getActionMap(this); setActionMap(am);//from w w w .ja v a 2 s . c o m list = new JList(new EventListModel<LinkValue>(model.getList())); list.setCellRenderer(new LinkListCellRenderer()); add(new JScrollPane(list), BorderLayout.CENTER); JPanel toolbar = new JPanel(); toolbar.add(new StreamflowButton(am.get("add"))); toolbar.add(new StreamflowButton(am.get("remove"))); add(toolbar, BorderLayout.SOUTH); list.getSelectionModel().addListSelectionListener(new SelectionActionEnabler(am.get("remove"))); new RefreshWhenShowing(this, model); }
From source file:se.streamsource.streamflow.client.ui.workspace.cases.contacts.ContactsView.java
License:Apache License
public ContactsView(@Service ApplicationContext context, @Uses ContactsModel model) { super(new BorderLayout()); this.model = model; ActionMap am = context.getActionMap(this); setActionMap(am);// w ww . ja v a2 s . c om setPreferredSize(new Dimension(200, 0)); this.setBorder(Borders.createEmptyBorder("2dlu, 2dlu, 2dlu, 2dlu")); contacts = new JList(new EventListModel<ContactDTO>(model.getEventList())); contacts.setPreferredSize(new Dimension(200, 1000)); contacts.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); JScrollPane contactsScrollPane = new JScrollPane(); contactsScrollPane.setViewportView(contacts); contacts.setCellRenderer(new DefaultListCellRenderer() { @Override public Component getListCellRendererComponent(JList jList, Object o, int i, boolean b, boolean b1) { ContactDTO contact = (ContactDTO) o; if ("".equals(contact.name().get())) { Component cell = super.getListCellRendererComponent(jList, i18n.text(WorkspaceResources.name_label), i, b, b1); cell.setForeground(Color.GRAY); return cell; } String text = contact.name().get(); return super.getListCellRendererComponent(jList, text, i, b, b1); } }); add(contactsScrollPane, BorderLayout.CENTER); JPanel toolbar = new JPanel(); toolbar.add(new StreamflowButton(am.get("add"))); toolbar.add(new StreamflowButton(am.get("remove"))); add(toolbar, BorderLayout.SOUTH); model.addObserver(new RefreshComponents().visibleOn("add", toolbar)); contacts.getSelectionModel().addListSelectionListener(new SelectionActionEnabler(am.get("remove"))); /* setFocusTraversalPolicy( new LayoutFocusTraversalPolicy() ); setFocusCycleRoot( true ); setFocusable( true ); addFocusListener( new FocusListener() { public void focusGained( FocusEvent e ) { Component defaultComp = getFocusTraversalPolicy().getDefaultComponent( contactView ); if (defaultComp != null) { defaultComp.requestFocusInWindow(); } } public void focusLost( FocusEvent e ) { } } ); */ new RefreshWhenShowing(this, this); }
From source file:se.streamsource.streamflow.client.ui.workspace.cases.contacts.ContactView.java
License:Apache License
public ContactView(@Service ApplicationContext appContext, @Structure Module module) { setLayout(layout);// w ww. j a va2s . co m context = appContext; setActionMap(context.getActionMap(this)); add(new JLabel(), "EMPTY"); DefaultComboBoxModel contactPreferenceModel = new DefaultComboBoxModel(); for (ContactPreference preference : ContactPreference.values()) { contactPreferenceModel.addElement(preference); } contactPreferenceField.setModel(contactPreferenceModel); contactPreferenceField.setSelectedIndex(0); contactPreferenceField.setRenderer(new ListCellRenderer() { public Component getListCellRendererComponent(JList jList, Object o, int i, boolean b, boolean b1) { JLabel comp = new JLabel("null"); if (o instanceof ContactPreference) { if (((ContactPreference) o) == ContactPreference.none) { comp = new JLabel(" "); } else { comp = new JLabel(i18n.text(WorkspaceResources.valueOf(((ContactPreference) o).name()))); } } comp.setBorder(BorderFactory.createEmptyBorder(2, 4, 2, 0)); return comp; } }); viewBinder = module.objectBuilderFactory().newObject(ValueBinder.class); phoneViewBinder = module.objectBuilderFactory().newObject(ValueBinder.class); addressViewBinder = module.objectBuilderFactory().newObject(ValueBinder.class); emailViewBinder = module.objectBuilderFactory().newObject(ValueBinder.class); suggestModel = new StreetAddressSuggestModel(); suggestAddress = new StreetAddressSuggestTextField(suggestModel, cityField, addressViewBinder); addressField = suggestAddress.getTextField(); // Edit panel { FormLayout formLayout = new FormLayout("right:70dlu, 5dlu, 150dlu:grow", "pref, pref, pref, pref, pref, pref, pref, pref, pref, pref, pref, pref, 5dlu, top:70dlu:grow, pref, pref"); this.setBorder(Borders.createEmptyBorder("2dlu, 2dlu, 2dlu, 2dlu")); form = new JPanel(); JScrollPane scrollPane = new JScrollPane(form); scrollPane.getVerticalScrollBar().setUnitIncrement(30); scrollPane.setBorder(BorderFactory.createEmptyBorder()); DefaultFormBuilder builder = new DefaultFormBuilder(formLayout, form); contactBinder = module.objectBuilderFactory().newObject(StateBinder.class); contactBinder.setResourceMap(context.getResourceMap(getClass())); ContactDTO template = contactBinder.bindingTemplate(ContactDTO.class); phoneNumberBinder = module.objectBuilderFactory().newObject(StateBinder.class); phoneNumberBinder.setResourceMap(context.getResourceMap(getClass())); ContactPhoneDTO phoneTemplate = phoneNumberBinder.bindingTemplate(ContactPhoneDTO.class); addressBinder = module.objectBuilderFactory().newObject(StateBinder.class); addressBinder.setResourceMap(context.getResourceMap(getClass())); ContactAddressDTO addressTemplate = addressBinder.bindingTemplate(ContactAddressDTO.class); emailBinder = module.objectBuilderFactory().newObject(StateBinder.class); emailBinder.setResourceMap(context.getResourceMap(getClass())); ContactEmailDTO emailTemplate = emailBinder.bindingTemplate(ContactEmailDTO.class); builder.add(new StreamflowButton(getActionMap().get("view"))); builder.nextLine(); builder.add(createLabel(WorkspaceResources.name_label)); builder.nextColumn(2); builder.add(contactBinder.bind(defaultFocusField = (JTextField) TEXTFIELD.newField(), template.name())); builder.nextLine(); builder.add(createLabel(WorkspaceResources.phone_label)); builder.nextColumn(2); builder.add(phoneNumberBinder.bind(phoneField, phoneTemplate.phoneNumber())); builder.nextLine(); builder.add(createLabel(WorkspaceResources.address_label)); builder.nextColumn(2); builder.add(suggestAddress); builder.nextLine(); builder.add(createLabel(WorkspaceResources.zip_label)); builder.nextColumn(2); builder.add(addressBinder.bind(zipField, addressTemplate.zipCode())); builder.nextLine(); builder.add(createLabel(WorkspaceResources.city_label)); builder.nextColumn(2); builder.add(addressBinder.bind(cityField, addressTemplate.city())); builder.nextLine(); builder.add(createLabel(WorkspaceResources.region_label)); builder.nextColumn(2); builder.add(addressBinder.bind(regionField, addressTemplate.region())); builder.nextLine(); builder.add(createLabel(WorkspaceResources.country_label)); builder.nextColumn(2); builder.add(addressBinder.bind(countryField, addressTemplate.country())); builder.nextLine(); builder.add(createLabel(WorkspaceResources.email_label)); builder.nextColumn(2); builder.add(emailBinder.bind(emailField, emailTemplate.emailAddress())); builder.nextLine(); builder.add(createLabel(WorkspaceResources.contact_id_label)); builder.nextColumn(2); builder.add(contactBinder.bind(contactIdField, template.contactId())); builder.nextLine(); builder.add(createLabel(WorkspaceResources.company_label)); builder.nextColumn(2); builder.add(contactBinder.bind(companyField, template.company())); builder.nextLine(); builder.add(createLabel(WorkspaceResources.contact_preference_label)); builder.nextColumn(2); builder.add(contactBinder.bind(contactPreferenceField, template.contactPreference()), new CellConstraints(3, 12, 1, 1, CellConstraints.LEFT, CellConstraints.TOP, new Insets(5, 0, 0, 0))); builder.nextLine(2); builder.add(createLabel(WorkspaceResources.note_label)); builder.nextColumn(2); builder.add(contactBinder.bind(TEXTAREA.newField(), template.note())); builder.nextLine(2); builder.nextColumn(2); lookupPanel = new JPanel(new FlowLayout(FlowLayout.CENTER)); lookupPanel.add(new StreamflowButton(getActionMap().get("lookupContact"))); builder.add(lookupPanel); contactBinder.addObserver(this); phoneNumberBinder.addObserver(this); addressBinder.addObserver(this); emailBinder.addObserver(this); add(scrollPane, "EDIT"); } // View panel { FormLayout formLayout = new FormLayout("right:70dlu, 5dlu, 150dlu:grow", "pref, pref, pref, pref, pref, pref, pref, pref, pref, pref, pref, pref, 5dlu, top:70dlu:grow, pref, pref"); this.setBorder(Borders.createEmptyBorder("2dlu, 2dlu, 2dlu, 2dlu")); form = new JPanel(); JScrollPane scrollPane = new JScrollPane(form); scrollPane.getVerticalScrollBar().setUnitIncrement(30); scrollPane.setBorder(BorderFactory.createEmptyBorder()); DefaultFormBuilder builder = new DefaultFormBuilder(formLayout, form); builder.add(new StreamflowButton(getActionMap().get("edit"))); builder.nextLine(); builder.add(createLabel(WorkspaceResources.name_label)); builder.nextColumn(2); builder.add(viewBinder.bind("name", visibleIfNotEmpty(new JLabel("!")))); builder.nextLine(); builder.add(createLabel(WorkspaceResources.phone_label)); builder.nextColumn(2); builder.add(phoneViewBinder.bind("phoneNumber", visibleIfNotEmpty(new JLabel("!")))); builder.nextLine(); builder.add(createLabel(WorkspaceResources.address_label)); builder.nextColumn(2); builder.add(addressViewBinder.bind("address", visibleIfNotEmpty(new JLabel("!")))); builder.nextLine(); builder.add(createLabel(WorkspaceResources.zip_label)); builder.nextColumn(2); builder.add(addressViewBinder.bind("zipCode", visibleIfNotEmpty(new JLabel("!")))); builder.nextLine(); builder.add(createLabel(WorkspaceResources.city_label)); builder.nextColumn(2); builder.add(addressViewBinder.bind("city", visibleIfNotEmpty(new JLabel("!")))); builder.nextLine(); builder.add(createLabel(WorkspaceResources.region_label)); builder.nextColumn(2); builder.add(addressViewBinder.bind("region", visibleIfNotEmpty(new JLabel("!")))); builder.nextLine(); builder.add(createLabel(WorkspaceResources.country_label)); builder.nextColumn(2); builder.add(addressViewBinder.bind("country", visibleIfNotEmpty(new JLabel("!")))); builder.nextLine(); builder.add(createLabel(WorkspaceResources.email_label)); builder.nextColumn(2); builder.add(emailViewBinder.bind("emailAddress", visibleIfNotEmpty(new JLabel("!")))); builder.nextLine(); builder.add(createLabel(WorkspaceResources.contact_id_label)); builder.nextColumn(2); builder.add(viewBinder.bind("contactId", visibleIfNotEmpty(new JLabel("!")))); builder.nextLine(); builder.add(createLabel(WorkspaceResources.company_label)); builder.nextColumn(2); builder.add(viewBinder.bind("company", visibleIfNotEmpty(new JLabel("!")))); builder.nextLine(); builder.add(createLabel(WorkspaceResources.contact_preference_label)); builder.nextColumn(2); builder.add(contactPreferenceLabel); builder.nextLine(2); builder.add(createLabel(WorkspaceResources.note_label)); builder.nextColumn(2); builder.add(viewBinder.bind("note", visibleIfNotEmpty(new JLabel("!")))); add(scrollPane, "VIEW"); } }
From source file:se.streamsource.streamflow.client.ui.workspace.cases.conversations.ConversationsView.java
License:Apache License
public ConversationsView(@Service final ApplicationContext context, @Uses final ConversationsModel model) { this.model = model; setActionMap(context.getActionMap(this)); MacOsUIWrapper.convertAccelerators(getActionMap()); this.setBorder(Borders.createEmptyBorder("2dlu, 2dlu, 2dlu, 2dlu")); JPanel left = new JPanel(new BorderLayout()); left.setPreferredSize(new Dimension(200, 100)); final CardLayout cards = new CardLayout(); final JPanel right = new JPanel(cards); JPanel empty = new JPanel(); right.add(empty, "EMPTY"); setRightComponent(right);//from w ww. ja v a 2s . co m cards.show(right, "EMPTY"); list = new JList(); list.setModel(new EventListModel<ConversationDTO>(model.conversations())); list.setCellRenderer(new ConversationsListCellRenderer()); list.setFixedCellHeight(-1); list.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION); list.addListSelectionListener(new ListSelectionListener() { public void valueChanged(ListSelectionEvent e) { if (list.getSelectedIndex() != -1 && !e.getValueIsAdjusting()) { final ConversationView conversationView = module.objectBuilderFactory() .newObjectBuilder(ConversationView.class) .use(model.newConversationModel((LinkValue) list.getSelectedValue())).newInstance(); setRightComponent(conversationView); } else { setRightComponent(right); cards.show(right, "EMPTY"); } } }); JScrollPane scroll = new JScrollPane(list, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); scroll.setMinimumSize(new Dimension(250, 100)); left.add(scroll, BorderLayout.CENTER); JPanel addPanel = new JPanel(); javax.swing.Action addConversationAction = getActionMap().get("addConversation"); StreamflowButton addConversation = new StreamflowButton(addConversationAction); addConversation.registerKeyboardAction(addConversationAction, (KeyStroke) addConversationAction.getValue(javax.swing.Action.ACCELERATOR_KEY), JComponent.WHEN_IN_FOCUSED_WINDOW); addPanel.add(addConversation, FlowLayout.LEFT); left.add(addPanel, BorderLayout.SOUTH); setLeftComponent(left); this.setDividerLocation(-1); model.addObserver(new RefreshComponents().enabledOn("create", addConversation)); new RefreshWhenShowing(this, model); }
From source file:se.streamsource.streamflow.client.ui.workspace.cases.conversations.ConversationView.java
License:Apache License
public ConversationView(@Service final ApplicationContext context, @Structure Module module, @Uses ConversationModel model) { super(new BorderLayout()); this.setBorder(Borders.createEmptyBorder("2dlu, 2dlu, 2dlu, 2dlu")); add(module.objectBuilderFactory().newObjectBuilder(ConversationParticipantsView.class) .use(model.newParticipantsModel()).newInstance(), BorderLayout.NORTH); add(module.objectBuilderFactory().newObjectBuilder(MessagesConversationView.class) .use(model.newMessagesModel()).newInstance(), BorderLayout.CENTER); }
From source file:se.streamsource.streamflow.client.ui.workspace.cases.forms.CaseSubmittedFormsView.java
License:Apache License
public CaseSubmittedFormsView(@Service ApplicationContext context, @Uses final CaseSubmittedFormsModel model) { super(new BorderLayout()); this.model = model; ActionMap am = context.getActionMap(this); setActionMap(am);//w w w. j a va 2 s . co m setMinimumSize(new Dimension(150, 0)); this.setBorder(Borders.createEmptyBorder("2dlu, 2dlu, 2dlu, 2dlu")); scroll = new JScrollPane(); submittedForms = new JTree(new DefaultMutableTreeNode("Root")); submittedForms.setRootVisible(false); submittedForms.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION); submittedForms.setShowsRootHandles(true); scroll.setViewportView(submittedForms); submittedForms.setCellRenderer(new DefaultTreeRenderer() { @Override public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus) { if (((DefaultMutableTreeNode) value).getUserObject() instanceof SubmittedFormListDTO) { final SubmittedFormListDTO listDTO = (SubmittedFormListDTO) ((DefaultMutableTreeNode) value) .getUserObject(); List<SubmittedFormListDTO> modelSubmittedForms = (ArrayList) Iterables .addAll(new ArrayList<SubmittedFormListDTO>(), model.getSubmittedForms()); Collections.reverse(modelSubmittedForms); SubmittedFormListDTO lastSubmitted = Iterables .first(Iterables.filter(new Specification<SubmittedFormListDTO>() { public boolean satisfiedBy(SubmittedFormListDTO item) { return listDTO.form().get().equals(item.form().get()); } }, modelSubmittedForms)); if (listDTO == lastSubmitted) { Component c = super.getTreeCellRendererComponent(tree, listDTO.form().get(), sel, expanded, leaf, row, hasFocus); Map attributes = c.getFont().getAttributes(); if (listDTO.unread().get()) { attributes.put(TextAttribute.WEIGHT, TextAttribute.WEIGHT_BOLD); } c.setFont(new Font(attributes)); return c; } String dateString = new SimpleDateFormat(text(WorkspaceResources.date_time_format)) .format(listDTO.submissionDate().get()); return super.getTreeCellRendererComponent(tree, dateString, sel, expanded, leaf, row, hasFocus); } else return super.getTreeCellRendererComponent(tree, "DummyNode", sel, expanded, leaf, row, hasFocus); } }); JScrollPane submittedFormsScollPane = new JScrollPane(); submittedFormsScollPane.setViewportView(submittedForms); add(submittedFormsScollPane, BorderLayout.CENTER); new RefreshWhenShowing(this, this); }