net.sourceforge.rssowl.controller.dialog
Class PreferencesDialog

java.lang.Object
  extended byorg.eclipse.jface.window.Window
      extended byorg.eclipse.jface.dialogs.Dialog
          extended bynet.sourceforge.rssowl.controller.dialog.PreferencesDialog
All Implemented Interfaces:
ITranslatable

public class PreferencesDialog
extends org.eclipse.jface.dialogs.Dialog
implements ITranslatable

The preferences dialog allows the user to change RSSOwl's preferences. The user selects one of the categories from the left tree. Every category offers a "Restore defaults" button to reset to the default settings. The "Apply" or "OK" Button saves the made settings.

Version:
1.1.3
Author:
Benjamin Pasero

Nested Class Summary
 
Nested classes inherited from class org.eclipse.jface.window.Window
org.eclipse.jface.window.Window.IExceptionHandler
 
Field Summary
(package private)  PropertyPage activePropertyPage
           
private  org.eclipse.swt.widgets.TreeItem amphetaRate
           
private  org.eclipse.swt.widgets.TreeItem blogger
           
private  org.eclipse.swt.widgets.TreeItem browser
           
private  org.eclipse.swt.widgets.Composite buttonHolder
           
private  org.eclipse.swt.widgets.TreeItem colors
           
private  org.eclipse.swt.widgets.TreeItem connection
           
private  org.eclipse.swt.widgets.Composite contentHolder
           
private static int dialogMinWidth
          Min. width of the dialog in DLUs
(package private)  EventManager eventManager
           
private  org.eclipse.swt.widgets.Button exportSettingsButton
           
private  org.eclipse.swt.widgets.TreeItem favorites
           
private  org.eclipse.swt.widgets.TreeItem font
           
private  org.eclipse.swt.widgets.TreeItem formatNewsTipMail
           
private  org.eclipse.swt.widgets.TreeItem hotkeys
           
private  org.eclipse.swt.widgets.Composite importExportHolder
           
private  org.eclipse.swt.widgets.Button importSettingsButton
           
(package private)  org.eclipse.swt.widgets.Label labelImgHolder
           
private  org.eclipse.swt.widgets.Label labelPrefTitle
           
private  org.eclipse.swt.widgets.TreeItem language
           
static int lastOpenedPropertyPage
          Remember the last opened property page
(package private)  org.eclipse.swt.widgets.Composite prefTitleHolder
           
(package private)  GUI rssOwlGui
           
private  org.eclipse.swt.widgets.TreeItem sortOrder
           
private  org.eclipse.swt.widgets.TreeItem systemTray
           
private  String title
           
(package private)  org.eclipse.swt.widgets.Tree tree
           
private  org.eclipse.swt.widgets.TreeItem view
           
(package private)  org.eclipse.swt.widgets.TreeItem workbench
           
 
Fields inherited from class org.eclipse.jface.dialogs.Dialog
buttonBar, dialogArea, DLG_IMG_ERROR, DLG_IMG_INFO, DLG_IMG_LOCKED, DLG_IMG_MESSAGE_ERROR, DLG_IMG_MESSAGE_INFO, DLG_IMG_MESSAGE_WARNING, DLG_IMG_QUESTION, DLG_IMG_WARNING
 
Fields inherited from class org.eclipse.jface.window.Window
CANCEL, OK
 
Constructor Summary
PreferencesDialog(org.eclipse.swt.widgets.Shell parentShell, String dialogTitle, GUI rssOwlGui)
          Creates a Dialog with a tree holding different categories.
 
Method Summary
protected  void buttonPressed(int buttonId)
           
protected  void configureShell(org.eclipse.swt.widgets.Shell shell)
           
private  void createAmphetaRateProps()
          Create new PropertyPage: AmphetaRate
private  void createBloggerProps()
          Create new PropertyPage: Blogger
private  void createBrowserProps()
          Create new PropertyPage: Browser
protected  org.eclipse.swt.widgets.Control createButtonBar(org.eclipse.swt.widgets.Composite parent)
           
private  void createColorProps()
          Create new PropertyPage: Colors
private  void createConnectionProps()
          Create new PropertyPage: Connection
protected  org.eclipse.swt.widgets.Control createDialogArea(org.eclipse.swt.widgets.Composite parent)
           
private  void createFavoritesProps()
          Create new PropertyPage: Favorites
private  void createFontProps()
          Create new PropertyPage: Font
private  void createHotkeysProps()
          Create new PropertyPage: Hotkeys
private  void createLanguageProps()
          Create new PropertyPage: Language
private  void createMailProps()
          Create new PropertyPage: Mail
private  void createSortOrderProps()
          Create new PropertyPage: Sort Order
private  void createSystemTrayProps()
          Create new PropertyPage: System Tray
private  void createViewProps()
          Create new PropertyPage: View
private  void createWorkbenchProps()
          Create new PropertyPage: Workbench
(package private)  void handleTreeItemSelect()
          Handle selection of items in the tree and create new PropertyPage
protected  void initializeBounds()
           
protected  void initializeBounds(boolean updateLocation)
          Set size and location of the dialog
private  boolean isContained(org.eclipse.swt.widgets.Control container, org.eclipse.swt.widgets.Control c)
          Returns true if the given Control c is a direct or indirect child of container.
private  void renewPropertyPage(String title)
          Renew the property page and set a new title
(package private)  void saveSettings()
          Update all Settings and Save them.
protected  void setButtonLayoutData(org.eclipse.swt.widgets.Button button)
          Set the layout data of the button to a GridData with appropriate widths This method was slightly modified so that it is not setting a heightHint.
protected  void setShellStyle(int newShellStyle)
           
private  void setTreeSelection(int propertyPage)
          Set the selected tree item
 void updateI18N()
          Update I18N - Is only called from the Language properties view!
 
Methods inherited from class org.eclipse.jface.dialogs.Dialog
applyDialogFont, cancelPressed, close, convertHeightInCharsToPixels, convertHeightInCharsToPixels, convertHorizontalDLUsToPixels, convertHorizontalDLUsToPixels, convertVerticalDLUsToPixels, convertVerticalDLUsToPixels, convertWidthInCharsToPixels, convertWidthInCharsToPixels, create, createButton, createButtonsForButtonBar, createContents, dialogFontIsDefault, getButton, getButtonBar, getCancelButton, getDialogArea, getImage, getOKButton, initializeDialogUnits, okPressed, setButtonLayoutFormData
 
Methods inherited from class org.eclipse.jface.window.Window
canHandleShellCloseEvent, constrainShellSize, createShell, getConstrainedShellBounds, getContents, getDefaultImage, getInitialLocation, getInitialSize, getLayout, getParentShell, getReturnCode, getShell, getShellListener, getShellStyle, getWindowManager, handleFontChange, handleShellCloseEvent, open, setBlockOnOpen, setDefaultImage, setExceptionHandler, setReturnCode, setWindowManager
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

lastOpenedPropertyPage

public static int lastOpenedPropertyPage
Remember the last opened property page


dialogMinWidth

private static final int dialogMinWidth
Min. width of the dialog in DLUs

See Also:
Constant Field Values

amphetaRate

private org.eclipse.swt.widgets.TreeItem amphetaRate

blogger

private org.eclipse.swt.widgets.TreeItem blogger

browser

private org.eclipse.swt.widgets.TreeItem browser

buttonHolder

private org.eclipse.swt.widgets.Composite buttonHolder

colors

private org.eclipse.swt.widgets.TreeItem colors

connection

private org.eclipse.swt.widgets.TreeItem connection

contentHolder

private org.eclipse.swt.widgets.Composite contentHolder

exportSettingsButton

private org.eclipse.swt.widgets.Button exportSettingsButton

favorites

private org.eclipse.swt.widgets.TreeItem favorites

font

private org.eclipse.swt.widgets.TreeItem font

formatNewsTipMail

private org.eclipse.swt.widgets.TreeItem formatNewsTipMail

hotkeys

private org.eclipse.swt.widgets.TreeItem hotkeys

importExportHolder

private org.eclipse.swt.widgets.Composite importExportHolder

importSettingsButton

private org.eclipse.swt.widgets.Button importSettingsButton

labelPrefTitle

private org.eclipse.swt.widgets.Label labelPrefTitle

language

private org.eclipse.swt.widgets.TreeItem language

sortOrder

private org.eclipse.swt.widgets.TreeItem sortOrder

systemTray

private org.eclipse.swt.widgets.TreeItem systemTray

title

private String title

view

private org.eclipse.swt.widgets.TreeItem view

activePropertyPage

PropertyPage activePropertyPage

eventManager

EventManager eventManager

labelImgHolder

org.eclipse.swt.widgets.Label labelImgHolder

prefTitleHolder

org.eclipse.swt.widgets.Composite prefTitleHolder

rssOwlGui

GUI rssOwlGui

tree

org.eclipse.swt.widgets.Tree tree

workbench

org.eclipse.swt.widgets.TreeItem workbench
Constructor Detail

PreferencesDialog

public PreferencesDialog(org.eclipse.swt.widgets.Shell parentShell,
                         String dialogTitle,
                         GUI rssOwlGui)
Creates a Dialog with a tree holding different categories. Each selected tree item will open a view to change some settings. Note that the dialog will have no visual representation (no widgets) until it is told to open.

Note that the open method blocks for input dialogs.

Parameters:
parentShell - the parent shell
dialogTitle - the dialog title, or null if none
rssOwlGui - The MainController
Method Detail

updateI18N

public void updateI18N()
Update I18N - Is only called from the Language properties view!

Specified by:
updateI18N in interface ITranslatable

createAmphetaRateProps

private void createAmphetaRateProps()
Create new PropertyPage: AmphetaRate


createBloggerProps

private void createBloggerProps()
Create new PropertyPage: Blogger


createBrowserProps

private void createBrowserProps()
Create new PropertyPage: Browser


createColorProps

private void createColorProps()
Create new PropertyPage: Colors


createConnectionProps

private void createConnectionProps()
Create new PropertyPage: Connection


createFavoritesProps

private void createFavoritesProps()
Create new PropertyPage: Favorites


createFontProps

private void createFontProps()
Create new PropertyPage: Font


createHotkeysProps

private void createHotkeysProps()
Create new PropertyPage: Hotkeys


createLanguageProps

private void createLanguageProps()
Create new PropertyPage: Language


createMailProps

private void createMailProps()
Create new PropertyPage: Mail


createSortOrderProps

private void createSortOrderProps()
Create new PropertyPage: Sort Order


createSystemTrayProps

private void createSystemTrayProps()
Create new PropertyPage: System Tray


createViewProps

private void createViewProps()
Create new PropertyPage: View


createWorkbenchProps

private void createWorkbenchProps()
Create new PropertyPage: Workbench


isContained

private boolean isContained(org.eclipse.swt.widgets.Control container,
                            org.eclipse.swt.widgets.Control c)
Returns true if the given Control c is a direct or indirect child of container.

Parameters:
container - The Container of the Control.
c - The Control to check.
Returns:
boolean TRUE if the Control is contained in the Container

renewPropertyPage

private void renewPropertyPage(String title)
Renew the property page and set a new title

Parameters:
title - A new title for the PropertyPage

setTreeSelection

private void setTreeSelection(int propertyPage)
Set the selected tree item

Parameters:
propertyPage - The propertypage number

buttonPressed

protected void buttonPressed(int buttonId)
See Also:
Dialog.buttonPressed(int)

configureShell

protected void configureShell(org.eclipse.swt.widgets.Shell shell)
See Also:
Window.configureShell(org.eclipse.swt.widgets.Shell)

createButtonBar

protected org.eclipse.swt.widgets.Control createButtonBar(org.eclipse.swt.widgets.Composite parent)
See Also:
Dialog.createButtonBar(org.eclipse.swt.widgets.Composite)

createDialogArea

protected org.eclipse.swt.widgets.Control createDialogArea(org.eclipse.swt.widgets.Composite parent)
See Also:
Dialog.createDialogArea(org.eclipse.swt.widgets.Composite)

initializeBounds

protected void initializeBounds()
See Also:
Dialog.initializeBounds()

initializeBounds

protected void initializeBounds(boolean updateLocation)
Set size and location of the dialog

Parameters:
updateLocation - If TRUE also update the location of the dialog

setButtonLayoutData

protected void setButtonLayoutData(org.eclipse.swt.widgets.Button button)
Set the layout data of the button to a GridData with appropriate widths This method was slightly modified so that it is not setting a heightHint.

Parameters:
button - The button to layout

setShellStyle

protected void setShellStyle(int newShellStyle)
See Also:
Window.setShellStyle(int)

handleTreeItemSelect

void handleTreeItemSelect()
Handle selection of items in the tree and create new PropertyPage


saveSettings

void saveSettings()
Update all Settings and Save them.



RSSOwl - RSS / RDF / Atom Newsreader

SourceForge.net Logo