List of usage examples for com.jgoodies.binding.adapter BoundedRangeAdapter BoundedRangeAdapter
public BoundedRangeAdapter(ValueModel subject, int extent, int min, int max)
From source file:com.salas.bb.dialogs.AdvancedPreferencesPanel.java
License:Open Source License
private void initComponents(ValueModel triggerChannel) { chShowTipsBox = ComponentsFactory.createCheckBox( Strings.message("userprefs.tab.general.show.tip.of.the.day"), new ToggleButtonAdapter( new BufferedValueModel(TipOfTheDayDialog.showingTipsModel(), triggerChannel))); String msg = Strings.message("userprefs.tab.general.check.for.new.versions"); if (ApplicationLauncher.isAutoUpdatesEnabled()) { chDoUpdatesCheck = ComponentsFactory.createCheckBox(msg, new ToggleButtonAdapter(new BufferedValueModel( new PropertyAdapter(userPrefs, UserPreferences.PROP_CHECKING_FOR_UPDATES_ON_STARTUP), triggerChannel))); } else {/* ww w . ja va 2 s . c o m*/ msg = msg.replaceAll("&", ""); chDoUpdatesCheck = new JCheckBox(msg); chDoUpdatesCheck.setSelected(true); chDoUpdatesCheck.setEnabled(false); } chAlwaysUseEnglish = ComponentsFactory .createCheckBox(Strings.message("userprefs.tab.advanced.always.use.english"), new ToggleButtonAdapter(new BufferedValueModel( new PropertyAdapter(userPrefs, UserPreferences.PROP_ALWAYS_USE_ENGLISH), triggerChannel))); tfInternetBrowser = new JTextField(); tfInternetBrowser.setDocument(new DocumentAdapter(new BufferedValueModel( new PropertyAdapter(userPrefs, UserPreferences.PROP_INTERNET_BROWSER), triggerChannel))); if (BrowserLauncher.isUsingJWSBrowser()) { tfInternetBrowser.setEnabled(false); tfInternetBrowser.setToolTipText(Strings.message("userprefs.tab.advanced.browser.tooltip.disabled")); } else { tfInternetBrowser.setEnabled(true); tfInternetBrowser.setToolTipText(Strings.message("userprefs.tab.advanced.browser.tooltip.enabled")); } initProxyComponents(triggerChannel); SpinnerModelAdapter spinModelFeedSelectionDelay = new SpinnerModelAdapter(new BoundedRangeAdapter( new BufferedValueModel(new PropertyAdapter(userPrefs, UserPreferences.PROP_FEED_SELECTION_DELAY), triggerChannel), 0, 0, 1000)); spinModelFeedSelectionDelay.setStepSize(100); chAAText = createCheckBox(userPrefs, Strings.message("userprefs.tab.advanced.antialiased.fonts"), UserPreferences.PROP_AA_TEXT); // The following code registers listener on Apply/Accept actions to track down // changes in BlogStarz limits. If changes are detected then channel list is // repainted. saveInitialLimits(); triggerChannel.addValueChangeListener(new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { if (Boolean.TRUE.equals(evt.getNewValue())) doRepaintChannelList(); } }); chShowUnreadButtonMenu = createCheckBox(userPrefs, Strings.message("userprefs.tab.advanced.show.the.unread.buttons.menu"), UserPreferences.PROP_SHOW_UNREAD_BUTTON_MENU); SpinnerModelAdapter spinModelFeedImportLimit = new SpinnerModelAdapter(new BoundedRangeAdapter( new BufferedValueModel(new PropertyAdapter(userPrefs, UserPreferences.PROP_FEED_IMPORT_LIMIT), triggerChannel), 1, 1, UserPreferences.MAX_FEED_IMPORT_LIMITATION)); spinModelFeedImportLimit.setStepSize(100); spinFeedImportLimit = new JSpinner(spinModelFeedImportLimit); initGuideComponents(triggerChannel); chHideOldArticles = createCheckBox(feedRS, Strings.message("userprefs.tab.articles.hide.articles.older.than"), "suppressingOlderThan"); chDisplayFullTitles = createCheckBox(feedRS, Strings.message("userprefs.tab.articles.display.full.titles"), "displayingFullTitles"); chSortingAscending = createCheckBox(feedRS, Strings.message("userprefs.tab.articles.sort.earlier.articles.first"), "sortingAscending"); tfSuppressOlderThan = new JTextField(); tfSuppressOlderThan.setDocument(new DocumentAdapter( new BufferedValueModel(new PropertyAdapter(feedRS, "suppressOlderThanString"), triggerChannel))); chCopyLinksInHREFFormat = createCheckBox(userPrefs, Strings.message("userprefs.tab.articles.use.href.format.for.links.copied.to.clipboard"), UserPreferences.PROP_COPY_LINKS_IN_HREF_FORMAT); chBrowseOnTitleDblClick = createCheckBox(userPrefs, Strings.message("userprefs.tab.articles.browse.on.double.click.over.the.title"), UserPreferences.PROP_BROWSE_ON_DBL_CLICK); chShowAppIconInSystray = createCheckBox(userPrefs, Strings.message("userprefs.tab.advanced.show.appicon.in.systray"), UserPreferences.PROP_SHOW_APPICON_IN_SYSTRAY); chMinimizeToSystray = createCheckBox(userPrefs, Strings.message("userprefs.tab.advanced.minimize.to.systray"), UserPreferences.PROP_MINIMIZE_TO_SYSTRAY); // Dock icon ValueModel modeModel = new BufferedValueModel( new BIDModeToStringConverter(new PropertyAdapter(userPrefs, UserPreferences.PROP_DIB_MODE)), triggerChannel); cbBIDMode = new JComboBox(new ComboBoxAdapter(BIDModeToStringConverter.MODES, modeModel)); }
From source file:com.salas.bb.dialogs.AdvancedPreferencesPanel.java
License:Open Source License
/** * Initializes proxy components./* w w w . ja v a 2 s . c o m*/ * * @param triggerChannel trigger. */ private void initProxyComponents(ValueModel triggerChannel) { chProxyEnabled = createCheckBox(userPrefs, Strings.message("userprefs.tab.advanced.use.proxy"), UserPreferences.PROP_PROXY_ENABLED); tfProxyHost = new JTextField(); tfProxyHost.setDocument(new DocumentAdapter(new BufferedValueModel( new PropertyAdapter(userPrefs, UserPreferences.PROP_PROXY_HOST), triggerChannel))); lbProxyPort = ComponentsFactory.createLabel(Strings.message("userprefs.tab.advanced.use.proxy.port")); spinProxyPort = new JSpinner(new SpinnerModelAdapter(new BoundedRangeAdapter(new BufferedValueModel( new PropertyAdapter(userPrefs, UserPreferences.PROP_PROXY_PORT), triggerChannel), 80, 80, 65536))); spinProxyPort.setEditor(new JSpinner.NumberEditor(spinProxyPort, "#")); lbProxyExclusions = ComponentsFactory.createLabel(Strings.message("userprefs.tab.advanced.no.proxy.for")); tfProxyExclusions = new JTextField(); tfProxyExclusions.setDocument(new DocumentAdapter(new BufferedValueModel( new PropertyAdapter(userPrefs, UserPreferences.PROP_PROXY_EXCLUSIONS), triggerChannel))); StateUpdatingToggleListener.install(chProxyEnabled, tfProxyHost, lbProxyPort, spinProxyPort, lbProxyExclusions, tfProxyExclusions); }
From source file:com.salas.bb.dialogs.CleanupWizardDialog.java
License:Open Source License
/** * Creates {@link StarsSelectionComponent} with initial value. * //w ww .j av a 2 s. c o m * @param value initial value. * @return a {@link StarsSelectionComponent} instance. */ private StarsSelectionComponent createStarsSelectionComponent(final int value) { modelRating = new ValueModelStars(value); BoundedRangeModel model = new BoundedRangeAdapter(modelRating, 0, 1, 5); return new StarsSelectionComponent(model); }
From source file:com.salas.bb.dialogs.guide.BasicGuideDialog.java
License:Open Source License
/** * Creates dialog.//from w w w . jav a2 s . c o m * * @param aFrame parent frame. * @param aTitle dialog title. * @param aPublishingAvailable <code>TRUE</code> if publishing is available. * @param aPublishingLimit the number of guides the user can have published. * @param aPublishingLimitReached <code>TRUE</code> if the limit is reached. */ public BasicGuideDialog(Frame aFrame, String aTitle, boolean aPublishingAvailable, int aPublishingLimit, boolean aPublishingLimitReached) { super(aFrame, aTitle); publishingAvailable = aPublishingAvailable; publishingLimit = aPublishingLimit; publishingLimitReached = aPublishingLimitReached; presentTitles = Collections.EMPTY_SET; model = new GuideIcons.ComboBoxModel(); renderer = new IconListCellRenderer(); readingListsModel = new ReadingListsTableModel(); tblReadingLists = new JTable(readingListsModel); tblReadingLists.setDefaultRenderer(String.class, new ReadingListsTableCellRenderer(readingListsModel)); UifUtilities.setTableColWidth(tblReadingLists, 2, 90); btnAddReadingList = new JButton(null, ResourceUtils.getIcon("add.icon")); btnAddReadingList.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { onAddReadingList(); } }); btnRemoveList = new JButton(null, ResourceUtils.getIcon("delete.icon")); btnRemoveList.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { onRemoveReadingList(); } }); // Publishing components chPublishingEnabled = ComponentsFactory.createCheckBox(Strings.message("guide.dialog.enable.publishing")); lbPublishingPublic = new JLabel(Strings.message("guide.dialog.public.visibility")); chPublishingPublic = new JCheckBox(); lbPublishingTitle = ComponentsFactory.createLabel(Strings.message("guide.dialog.reading.list.title")); lbPublishingTags = ComponentsFactory.createLabel(Strings.message("guide.dialog.tags")); lbPublishingURL = new JLabel(Strings.message("guide.dialog.publicationurl")); lnkPublishingURL = new LinkLabel(Strings.message("guide.dialog.not.published.yet")); lbLastPublishingDate = new JLabel(Strings.message("guide.dialog.last.update.date")); tfLastPublishingDate = new JLabel(Strings.message("guide.dialog.never.updated")); tfPublishingTitle = new JTextField(); lbPublishingTitle.setLabelFor(tfPublishingTitle); tfPublishingTags = new JTextField(); lbPublishingTags.setLabelFor(tfPublishingTags); vhPublishingRating = new ValueHolder(1); sscPublishingRating = new StarsSelectionComponent(new BoundedRangeAdapter(vhPublishingRating, 0, 1, 5)); lbPublishingRating = new JLabel(Strings.message("guide.dialog.rating")); btnCopyToClipboard = new JButton(Strings.message("guide.dialog.copy")); btnCopyToClipboard.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { CommonUtils.copyTextToClipboard(lnkPublishingURL.getText()); } }); onPublishingEnabled(); chPublishingEnabled.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent e) { onPublishingEnabled(); } }); chAllowNotifications = ComponentsFactory .createCheckBox(Strings.message("guide.dialog.allow.notifications")); }
From source file:com.salas.bb.dialogs.StarzPanel.java
License:Open Source License
/** * Helper to create and configure a JSlider. * * @param propertyName name of property to bind to. * * @return newly created JSlider./*from w ww .ja v a2 s.co m*/ */ private JSlider createStarzSlider(String propertyName) { JSlider res; res = new JSlider(); res.setOrientation(SwingConstants.HORIZONTAL); res.setMaximum(4); res.setMinimum(0); res.setPaintTicks(true); res.setMajorTickSpacing(1); res.setSnapToTicks(true); res.setModel(new BoundedRangeAdapter( new BufferedValueModel(new PropertyAdapter(preferences, propertyName), triggerChannel), 0, 0, 4)); return res; }
From source file:com.salas.bb.sentiments.AdvancedSettingsDialog.java
License:Open Source License
/** * Helps to create spinners./*from w ww .jav a 2s .c o m*/ * * @param property property to spin. * * @return spinner. */ private JSpinner createThresholdSpinner(String property) { SpinnerModelAdapter model = new SpinnerModelAdapter(new BoundedRangeAdapter( new BufferedValueModel(new PropertyAdapter(config, property), trigger), 0, -100, 100)); model.setStepSize(1); return new JSpinner(model); }
From source file:com.salas.bb.views.mainframe.FeedsPanel.java
License:Open Source License
/** * Creates sub-toolbar component.// w w w .ja v a 2 s . c o m * * @return component. */ private JComponent createSubtoolbar() { UserPreferences uPrefs = GlobalModel.SINGLETON.getUserPreferences(); String propName = UserPreferences.PROP_GOOD_CHANNEL_STARZ; PropertyAdapter propertyAdapter = new PropertyAdapter(uPrefs, propName, true); BoundedRangeAdapter model = new BoundedRangeAdapter(propertyAdapter, 0, 1, 5); StarsSelectionComponent starsSelector = new StarsSelectionComponent(model); starsSelector.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); // Install Starz Selector and its proactive tip MouseListener tipAdapter = new TipOfTheDay.TipMouseAdapter(TipOfTheDay.TIP_STARZ_FILTER, true); starsSelector.addMouseListener(tipAdapter); JPanel pnl = new JPanel(new BorderLayout()); pnl.add(starsSelector, BorderLayout.CENTER); return pnl; }
From source file:com.salas.bb.views.querybuilder.editors.StarzVE.java
License:Open Source License
/** * Constructs a stars selection component. * * @param aModel value model./*from w w w .ja va2s . c o m*/ */ public StarzVE(ValueModel aModel) { super(new BoundedRangeAdapter(new StringToIntegerValueModel(aModel, 1), 0, 1, 5)); setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); }
From source file:com.salas.bb.whatshot.Dialog.java
License:Open Source License
/** * Creates search dialog.// w w w . ja va 2 s . com * * @param owner dialog's parent frame. * @param engine engine to use. * @param set guides set to pick the guides from. * @param listener selection listener. */ public Dialog(Frame owner, Engine engine, final GuidesSet set, ActionListener listener) { super(owner, Strings.message("whatshot.dialog.title")); guidesSet = set; pnlProgress = new ProgressPanel(Strings.message("whatshot.inprogress")); scrollPanel = buildResultsPanel(); setModal(false); // Only unread selector Preferences prefs = Application.getUserPreferences(); ValueModel mdlOnlyUnread = new PreferencesAdapter(prefs, PROP_WH_UNREAD_ONLY, false); chOnlyUnread = ComponentsFactory.createCheckBox(Strings.message("whatshot.unreadonly"), new ToggleButtonAdapter(mdlOnlyUnread)); // Time options ValueModel mdlTimeOption = new AbstractConverter( new PreferencesAdapter(prefs, PROP_WH_TIME_OPTION, TimeOption.THIS_WEEK.getCode())) { public Object convertFromSubject(Object o) { return TimeOption.fromCode((Integer) o); } public void setValue(Object o) { TimeOption to = (TimeOption) o; subject.setValue(to.getCode()); } }; cbTimeOptions = new JComboBox(new ComboBoxAdapter(TimeOption.OPTIONS, mdlTimeOption)); // Starz selector ValueModel mdlStarz = new PreferencesAdapter(prefs, PROP_WH_STARZ, 1); starz = new StarsSelectionComponent(new BoundedRangeAdapter(mdlStarz, 0, 1, 5)); // Make toolbar fonts smaller UifUtilities.smallerFont(chOnlyUnread); UifUtilities.smallerFont(cbTimeOptions); // Setup button btnSetup = new JButton(Strings.message("whatshot.setup")); btnSetup.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { SetupDialog sd = new SetupDialog(GlobalModel.SINGLETON.getUserPreferences()); sd.open(); } }); UifUtilities.smallerFont(btnSetup); // Results model and list model = new ListModel(engine, mdlStarz, mdlOnlyUnread, mdlTimeOption); onSetupChange(); itemsList = new ResultsList(model) { @Override protected ResultGroupPanel createGroupPanel(ResultGroup group) { return new ResultGroupPanel(group.getName(), group.getName(), GROUP_COLOR_1, GROUP_COLOR_2); } }; itemsList.addActionListener(listener); // Start populating SwingWorker scanner = model.scan(); scanner.addPropertyChangeListener(new ScannerListener()); scanner.execute(); }
From source file:repast.simphony.ui.RunOptionsPanel.java
public void init(RunOptionsModel optionsModel) { PresentationModel pModel = new PresentationModel(optionsModel); ValueModel model = pModel.getModel("pauseAt"); Bindings.bind(pauseAtFld, model); model = pModel.getModel("stopAt"); Bindings.bind(stopAtFld, model); model = pModel.getModel("sparklineLength"); Bindings.bind(sparklineLengthFld, model); sparklineLengthFld.setText("" + RunEnvironment.DEFAULT_SPARKLINE_LENGTH); model = pModel.getModel("sparklineType"); Bindings.bind(sparklineTypeFld, model); sparklineTypeFld.setSelected(RunEnvironment.DEFAULT_SPARKLINE_TYPE); pauseAtFld.addFocusListener(tempFocusCommitter); stopAtFld.addFocusListener(tempFocusCommitter); sparklineLengthFld.addFocusListener(tempFocusCommitter); model = pModel.getModel("scheduleTickDelay"); Bindings.addComponentPropertyHandler(slider1, model); slider1.setModel(new BoundedRangeAdapter(model, 0, 0, 100)); }