view todo.txt @ 62:a4880dcb4139

Slider
author Frank Benoit <benoit@tionex.de>
date Sat, 12 Jan 2008 13:39:54 +0100
parents 1d461bec7afb
children f30b84b656a5
line wrap: on
line source

Rule for porting

    package/module and modulename
    class declarator extends/implements to : and comma list
    ctors: Classnames to 'this'
    Replace automatic
        s/\<boolean\>/bool/g
        s/==/is/g
        s/!=/!is/g
        s/\<equals\>/==\/*eq*\//g   // the replacements need post edit
    Replace with prompt
        s/\<String\>/char[]/g       // replace only types, not comments or parts for identifiers
        s/is 0/is null/g            // replace only that one, that are reference types
    Search for "int /*long*/"
        -> "auto" if variable that gets initialized with something typed, e.g. result of method call.

    Marks:
        OK  the module is ported for compiling
        s   checked switches to have a 'default' case
        o   checked all override methods, added 'override' and/or aliases
        r   A second person did a review Java vs D



Next Steps:
    * accessibility package (independant)
    * Shell

EventTable

Questions:
    Whats needed at minimum to make a test with empty window?
    How about memory management?
    Check to remove "package", it non-virtual.

SWT                                    // OKs left: getMessage -> Compatibility:ResourceBundle
SWTError                               // OKs
SWTException                           // OKs

internal/BidiUtil                       // OKs (stub: Runnable )
internal/Callback                       // ?? hopefully not needed
internal/CloneableCompatibility         // OKs (java.lang.Cloneable)
internal/C                              // OKs not needed
internal/Compatibility                  // left: ResourceBundle, interrupt()
internal/Converter                      // left: gtk function prototypes
internal/Library                        // OKs (loading of lib not needed)
internal/Lock                           // OKs
internal/LONG                           // OKs
internal/Platform                       // OKs
internal/SerializableCompatibility      // OKs (java.io.Serializable)
internal/SWTEventListener               // OKs (java.util.EventListener)
internal/SWTEventObject                 // OKs (java.util.EventObject)

graphics/Color                          // OKs
graphics/Cursor                         // OKs
graphics/Device                         // OKs
graphics/DeviceData                     // OKs (fld: debug->debugging)
graphics/Drawable                       // OKs
graphics/Font                           // OKs
graphics/FontData                       // OKs
graphics/FontMetrics                    // OKs
graphics/GC                             // OKs
graphics/GCData                         // OKs
graphics/GlyphMetrics                   // OKs
graphics/Image                          // OKs
graphics/ImageData                      // OKs
graphics/ImageDataLoader                // OKs
graphics/ImageLoader                    // OKs
graphics/ImageLoaderEvent               // OKs
graphics/ImageLoaderListener            // OKs
graphics/LineAttributes                 // OKs
graphics/PaletteData                    // OKs
graphics/Path                           // OKs
graphics/PathData                       // OKs
graphics/Pattern                        // OKs
graphics/Point                          // OKs
graphics/Rectangle                      // OKs (meth union->makeUnion)
graphics/Region                         // OKs
graphics/Resource                       // OKs
graphics/RGB                            // OKs
graphics/TextLayout                     // OKs (problems char/wchar)
graphics/TextStyle                      // OKs
graphics/Transform                      // OKs

widgets/Button                          // OKs
widgets/Canvas                          // OKs
widgets/Caret                           // OKs
widgets/ColorDialog
widgets/Combo
widgets/Composite                       // OKs
widgets/Control                         // OKs
widgets/CoolBar
widgets/CoolItem
widgets/DateTime
widgets/Decorations                     // OKs
widgets/Dialog
widgets/DirectoryDialog
widgets/Display                         // OKs
widgets/Event                           // OKs
widgets/EventTable                      // OKs
widgets/ExpandBar
widgets/ExpandItem
widgets/FileDialog
widgets/FontDialog
widgets/Group
widgets/ImageList                       // OKs
widgets/Item                            // OKs
widgets/Label
widgets/Layout                          // OKs
widgets/Link
widgets/List
widgets/Listener                        // OKs
widgets/Menu                            // OKs
widgets/MenuItem                        // OKs
widgets/MessageBox
widgets/Monitor                         // OKs
widgets/ProgressBar
widgets/RunnableLock                    // OKs
widgets/Sash
widgets/Scale                           // OKs
widgets/Scrollable                      // OKs
widgets/ScrollBar                       // OKs
widgets/Shell                           // OKs
widgets/Slider                          // OKs
widgets/Spinner
widgets/Synchronizer                    // OKs
widgets/TabFolder
widgets/TabItem
widgets/Table
widgets/TableColumn
widgets/TableItem
widgets/Text                            // OKs
widgets/ToolBar
widgets/ToolItem
widgets/ToolTip                         // OKs
widgets/Tracker
widgets/Tray                            // OKs
widgets/TrayItem                        // OKs
widgets/Tree
widgets/TreeColumn
widgets/TreeItem
widgets/TypedListener                   // OKs
widgets/Widget                          // OKs

layout/FormLayout                       // OKs
layout/FormAttachment                   // OKs
layout/RowData                          // OKs
layout/GridData                         // OKs
layout/GridLayout                       // OKs
layout/FillLayout                       // OKs
layout/FormData                         // OKs
layout/FillData                         // OKs
layout/RowLayout                        // OKs



internal/gnome/GnomeVFSMimeApplication
internal/gnome/GNOME
internal/cde/CDE
internal/cde/DtActionArg
internal/theme/TabItemDrawData
internal/theme/ProgressBarDrawData
internal/theme/ButtonDrawData
internal/theme/RangeDrawData
internal/theme/TabFolderDrawData
internal/theme/ScaleDrawData
internal/theme/GroupDrawData
internal/theme/DrawData
internal/theme/ComboDrawData
internal/theme/ToolBarDrawData
internal/theme/Theme
internal/theme/ScrollBarDrawData
internal/theme/ExpanderDrawData
internal/theme/ToolItemDrawData
internal/cairo/cairo_path_t                     // X
internal/cairo/cairo_path_data_t                // X
internal/cairo/Cairo                            // OK
internal/cairo/cairo_text_extents_t             // X
internal/cairo/cairo_font_extents_t             // X
internal/image/FileFormat                       // OKs
internal/image/GIFFileFormat                    // OKs
internal/image/JPEGAppn                         // OKs
internal/image/JPEGArithmeticConditioningTable  // OKs
internal/image/JPEGComment                      // OKs
internal/image/JPEGDecoder                      // OKs
internal/image/JPEGEndOfImage                   // OKs
internal/image/JPEGFileFormat                   // OKs
internal/image/JPEGFixedSizeSegment             // OKs
internal/image/JPEGFrameHeader                  // OKs
internal/image/JPEGHuffmanTable                 // OKs
internal/image/JPEGQuantizationTable            // OKs
internal/image/JPEGRestartInterval              // OKs
internal/image/JPEGScanHeader                   // OKs
internal/image/JPEGSegment                      // OKs
internal/image/JPEGStartOfImage                 // OKs
internal/image/JPEGVariableSizeSegment          // OKs
internal/image/LEDataInputStream                // OKs
internal/image/LEDataOutputStream               // OKs
internal/image/LZWCodec                         // OKs
internal/image/LZWNode                          // OKs
internal/image/OS2BMPFileFormat                 // OKs
internal/image/PngChunk                         // OKs
internal/image/PngChunkReader                   // OKs
internal/image/PngDecodingDataStream            // OKs
internal/image/PngDeflater                      // OKs
internal/image/PngEncoder                       // OKs
internal/image/PNGFileFormat                    // OKs
internal/image/PngFileReadState                 // OKs
internal/image/PngHuffmanTable                  // OKs
internal/image/PngHuffmanTables                 // OKs
internal/image/PngIdatChunk                     // OKs
internal/image/PngIendChunk                     // OKs
internal/image/PngIhdrChunk                     // OKs
internal/image/PngInputStream                   // OKs
internal/image/PngLzBlockReader                 // OKs
internal/image/PngPlteChunk                     // OKs
internal/image/PngTrnsChunk                     // OKs
internal/image/TIFFDirectory                    // OKs
internal/image/TIFFFileFormat                   // OKs
internal/image/TIFFModifiedHuffmanCodec         // OKs
internal/image/TIFFRandomFileAccess             // OKs
internal/image/WinBMPFileFormat                 // OKs
internal/image/WinICOFileFormat                 // OKs

internal/gtk/GdkEventCrossing                   // X
internal/gtk/XAnyEvent                          // X
internal/gtk/OS                                 // OKs
internal/gtk/PangoRectangle                     // X
internal/gtk/GTypeQuery                         // X
internal/gtk/GdkEventScroll                     // X
internal/gtk/PangoLayoutLine                    // X
internal/gtk/GdkVisual                          // X
internal/gtk/GdkEventWindowState                // X
internal/gtk/PangoAttribute                     // X
internal/gtk/PangoLogAttr                       // X
internal/gtk/GdkWindowAttr                      // X
internal/gtk/XWindowChanges                     // X
internal/gtk/GdkEventVisibility                 // X
internal/gtk/GdkEventAny                        // X
internal/gtk/GTypeInfo                          // X
internal/gtk/GObjectClass                       // X
internal/gtk/XExposeEvent                       // X
internal/gtk/GdkRectangle                       // X
internal/gtk/GdkEvent                           // X
internal/gtk/GtkWidgetClass                     // X
internal/gtk/PangoItem                          // X
internal/gtk/XRenderPictureAttributes           // X
internal/gtk/GtkTargetEntry                     // X
internal/gtk/XButtonEvent                       // X
internal/gtk/GtkAdjustment                      // X
internal/gtk/GInterfaceInfo                     // X
internal/gtk/GdkColor                           // X
internal/gtk/GtkBorder                          // X
internal/gtk/GdkEventMotion                     // X
internal/gtk/GdkEventButton                     // X
internal/gtk/XEvent                             // X
internal/gtk/GtkCombo                           // X
internal/gtk/GdkDragContext                     // X
internal/gtk/GtkRequisition                     // X
internal/gtk/PangoLayoutRun                     // X
internal/gtk/GtkCellRendererClass               // X
internal/gtk/XVisibilityEvent                   // X
internal/gtk/GdkEventKey                        // X
internal/gtk/XCrossingEvent                     // X
internal/gtk/GtkAllocation                      // X
internal/gtk/XClientMessageEvent                // X
internal/gtk/GtkTargetPair                      // X
internal/gtk/GdkEventExpose                     // X
internal/gtk/GdkGeometry                        // X
internal/gtk/GdkImage                           // X
internal/gtk/GtkColorSelectionDialog            // X
internal/gtk/GtkFixed                           // X
internal/gtk/XFocusChangeEvent                  // X
internal/gtk/GdkEventFocus                      // X
internal/gtk/GdkGCValues                        // X
internal/gtk/GtkSelectionData                   // X
internal/gtk/GtkFileSelection                   // X

events/ShellAdapter                             // OK
events/SelectionListener                        // OK
events/TreeListener                             // OK
events/MenuDetectListener                       // OK
events/SelectionAdapter                         // OK
events/KeyAdapter                               // OK
events/TreeEvent                                // OK
events/ControlListener                          // OK
events/ArmEvent                                 // OK
events/DragDetectEvent                          // OK
events/PaintListener                            // OK
events/MenuEvent                                // OK
events/DisposeEvent                             // OK
events/MouseEvent                               // OK
events/ShellListener                            // OK
events/SelectionEvent                           // OK
events/ControlAdapter                           // OK
events/ExpandListener                           // OK
events/MouseTrackListener                       // OK
events/FocusListener                            // OK
events/TreeAdapter                              // OK
events/MenuListener                             // OK
events/FocusEvent                               // OK
events/FocusAdapter                             // OK
events/MenuAdapter                              // OK
events/MouseWheelListener                       // OK
events/HelpListener                             // OK
events/ExpandAdapter                            // OK
events/TraverseEvent                            // OK
events/MouseListener                            // OK
events/ShellEvent                               // OK
events/KeyEvent                                 // OK
events/ExpandEvent                              // OK
events/MenuDetectEvent                          // OK
events/VerifyEvent                              // OK
events/TraverseListener                         // OK
events/ArmListener                              // OK
events/ModifyListener                           // OK
events/MouseMoveListener                        // OK
events/ModifyEvent                              // OK
events/KeyListener                              // OK
events/VerifyListener                           // OK
events/PaintEvent                               // OK
events/HelpEvent                                // OK
events/DragDetectListener                       // OK
events/TypedEvent                               // OK
events/ControlEvent                             // OK
events/MouseTrackAdapter                        // OK
events/DisposeListener                          // OK
events/MouseAdapter                             // OK


// not sure what this is
internal/accessibility/gtk/ATK                      // OK
internal/accessibility/gtk/AtkTextIface             // X
internal/accessibility/gtk/AtkObjectFactoryClass    // X
internal/accessibility/gtk/GtkAccessible            // X
internal/accessibility/gtk/AtkSelectionIface        // X
internal/accessibility/gtk/AtkActionIface           // X
internal/accessibility/gtk/AtkObjectClass           // X
internal/accessibility/gtk/AtkComponentIface        // X
internal/accessibility/gtk/AtkHypertextIface        // X
accessibility/AccessibleTextEvent                   // OKs
accessibility/AccessibleAdapter                     // OKs
accessibility/AccessibleListener                    // OKs
accessibility/AccessibleControlEvent                // OKs
accessibility/AccessibleTextListener                // OKs
accessibility/AccessibleControlAdapter              // OKs
accessibility/AccessibleObject                      // OKs
accessibility/AccessibleEvent                       // OKs
accessibility/AccessibleControlListener             // OKs
accessibility/AccessibleTextAdapter                 // OKs
accessibility/ACC                                   // OKs
accessibility/Accessible                            // OKs
accessibility/AccessibleFactory                     // OKs





=== LOW Priority ===
custom/StyleRange
custom/StyledTextRenderer
custom/PopupList
custom/CTabFolderLayout
custom/ScrolledCompositeLayout
custom/CTabFolder
custom/LineBackgroundListener
custom/CTabFolderListener
custom/BusyIndicator
custom/StyledTextDropTargetEffect
custom/CTabFolderEvent
custom/StyledTextPrintOptions
custom/CTabFolder2Listener
custom/StackLayout
custom/TableCursor
custom/LineBackgroundEvent
custom/StyledTextListener
custom/TextChangedEvent
custom/ExtendedModifyListener
custom/PaintObjectListener
custom/ViewFormLayout
custom/ViewForm
custom/TextChangeListener
custom/TableEditor
custom/StyledTextEvent
custom/PaintObjectEvent
custom/AnimatedProgress
custom/ExtendedModifyEvent
custom/CCombo
custom/MovementListener
custom/CTabFolder2Adapter
custom/CBannerLayout
custom/CLayoutData
custom/ScrolledComposite
custom/ControlEditor
custom/SashForm
custom/CLabel
custom/CTabItem
custom/TreeEditor
custom/StyledText
custom/TableTree
custom/ST
custom/TextChangingEvent
custom/SashFormLayout
custom/LineStyleEvent
custom/CTabFolderAdapter
custom/VerifyKeyListener
custom/CBanner
custom/StyledTextContent
custom/Bullet
custom/DefaultContent
custom/BidiSegmentEvent
custom/TableTreeItem
custom/MovementEvent
custom/TableTreeEditor
custom/BidiSegmentListener
custom/SashFormData
custom/LineStyleListener

program/Program // find default program for a given file extension (.http => open the standard browser)

printing/Printer
printing/PrinterData
printing/PrintDialog

internal/opengl/glx/XVisualInfo
internal/opengl/glx/GLX
opengl/GLCanvas
opengl/GLData

dnd  // Drag and Drop
dnd/DragSourceAdapter
dnd/TreeDragSourceEffect
dnd/TreeDropTargetEffect
dnd/FileTransfer
dnd/DragSourceListener
dnd/DNDEvent
dnd/DragSource
dnd/TextTransfer
dnd/DragSourceEvent
dnd/TableDropTargetEffect
dnd/ClipboardProxy
dnd/DropTargetListener
dnd/DropTarget
dnd/Transfer
dnd/DNDListener
dnd/ByteArrayTransfer
dnd/DropTargetEvent
dnd/DragSourceEffect
dnd/RTFTransfer
dnd/Clipboard
dnd/TransferData
dnd/DropTargetEffect
dnd/TableDragSourceEffect
dnd/HTMLTransfer
dnd/DND
dnd/DropTargetAdapter

internal/mozilla/XPCOMObject
internal/mozilla/nsIPromptService
internal/mozilla/nsIWebNavigation
internal/mozilla/nsIWebProgressListener2
internal/mozilla/nsIObserverService
internal/mozilla/nsIDOMWindow
internal/mozilla/nsIWindowCreator
internal/mozilla/nsITooltipListener
internal/mozilla/nsIHelperAppLauncherDialog
internal/mozilla/nsIContextMenuListener
internal/mozilla/nsIMemory
internal/mozilla/nsISimpleEnumerator
internal/mozilla/nsIDownload
internal/mozilla/nsIDirectoryServiceProvider2
internal/mozilla/nsIWebProgressListener
internal/mozilla/nsIEmbeddingSiteWindow
internal/mozilla/nsIProgressDialog
internal/mozilla/nsIWebNavigationInfo
internal/mozilla/nsICategoryManager
internal/mozilla/nsIFilePicker_1_8
internal/mozilla/nsIWebBrowserChrome
internal/mozilla/GREVersionRange
internal/mozilla/nsIDocShell
internal/mozilla/nsIWebBrowser
internal/mozilla/nsIPrefBranch
internal/mozilla/nsICookieManager
internal/mozilla/nsISupports
internal/mozilla/nsIComponentManager
internal/mozilla/nsIFilePicker
internal/mozilla/nsIDownload_1_8
internal/mozilla/nsIWebBrowserFocus
internal/mozilla/nsIWebBrowserChromeFocus
internal/mozilla/nsIWindowCreator2
internal/mozilla/nsEmbedString
internal/mozilla/nsIDOMEvent
internal/mozilla/nsIDOMWindowCollection
internal/mozilla/nsIPrefService
internal/mozilla/nsIDOMUIEvent
internal/mozilla/nsIHelperAppLauncher
internal/mozilla/nsIWeakReference
internal/mozilla/nsILocalFile
internal/mozilla/nsIJSContextStack
internal/mozilla/nsICookie
internal/mozilla/nsISupportsWeakReference
internal/mozilla/XPCOM
internal/mozilla/nsIDirectoryService
internal/mozilla/nsIProperties
internal/mozilla/nsIFactory
internal/mozilla/nsIDOMMouseEvent
internal/mozilla/nsID
internal/mozilla/nsIServiceManager
internal/mozilla/nsICancelable
internal/mozilla/nsIIOService
internal/mozilla/nsIProgressDialog_1_8
internal/mozilla/nsIWindowWatcher
internal/mozilla/nsIPrefLocalizedString
internal/mozilla/nsIWebProgress
internal/mozilla/nsITransfer
internal/mozilla/nsIFile
internal/mozilla/nsIWebBrowserStream
internal/mozilla/nsIInterfaceRequestor
internal/mozilla/nsIURIContentListener
internal/mozilla/nsIInputStream
internal/mozilla/nsIDirectoryServiceProvider
internal/mozilla/nsIDOMEventTarget
internal/mozilla/XPCOMInit
internal/mozilla/nsIComponentRegistrar
internal/mozilla/nsIRequest
internal/mozilla/nsIAppShell
internal/mozilla/nsIHelperAppLauncher_1_8
internal/mozilla/nsIURI
internal/mozilla/nsIBaseWindow
browser/SimpleEnumerator
browser/MozillaDelegate
browser/DownloadFactory_1_8
browser/PromptServiceFactory
browser/Download
browser/Download_1_8
browser/HelperAppLauncherDialog
browser/FilePickerFactory_1_8
browser/LocationListener
browser/StatusTextEvent
browser/ProgressListener
browser/VisibilityWindowListener
browser/WindowEvent
browser/PromptService
browser/FilePicker_1_8
browser/HelperAppLauncherDialogFactory
browser/CloseWindowListener
browser/TitleListener
browser/FilePickerFactory
browser/WindowCreator2
browser/LocationAdapter
browser/TitleEvent
browser/ProgressAdapter
browser/Browser
browser/InputStream
browser/VisibilityWindowAdapter
browser/AppFileLocProvider
browser/OpenWindowListener
browser/ProgressEvent
browser/PromptDialog
browser/StatusTextListener
browser/WebBrowser
browser/LocationEvent
browser/FilePicker
browser/Mozilla
browser/DownloadFactory

awt/SWT_AWT // Compatibility to the Java AWT GUI, not needed