Changeset 41

Show
Ignore:
Timestamp:
10/26/04 14:02:38 (4 years ago)
Author:
jjr
Message:

Update to clean up a number of problems:

1. All internal class imports moved to module scope. No forward
reference issues surfaced by doing this, but a number of
overlooked errors appeared. These were mostly missing symbol
complaints. Fixed.

2. More String classes converted to char[]. Unfortunately, the
fact that we don't use a String class may make DWT somewhat buggy
since there's no seemless way to pass back wide charaters anymore
(apart from overloading and versioning). It gets messy fast. It
probably would have been easier to just keep a String class in
here. We'll see.

DWT still doesn't compile properly. The infinite loop problem
in the compile process still exists despite numerous
changes. I'll slowly slog away at the code to see if this
issue can eventually be pinpointed (I do know it's related to the
widget directory).

I'm slowly working in the callback class and functions. The callback
implementation has been barely touched. References to it are
still commented out in the widg

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/src/dwt/events/armevent.d

    r40 r41  
    2222 
    2323public final class ArmEvent : TypedEvent { 
    24  
    2524     
    2625/** 
  • trunk/src/dwt/events/armlistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
    14  
     14private import dwt.events.armevent; 
     15     
    1516/** 
    1617 * Classes which implement this interface provide a method 
     
    2930public interface ArmListener : DWTEventListener { 
    3031 
    31     private import dwt.events.armevent; 
    32  
    3332/** 
    3433 * Sent when a widget is armed, or 'about to be selected'. 
  • trunk/src/dwt/events/controladapter.d

    r38 r41  
    1212 
    1313private import dwt.events.controllistener; 
     14private import dwt.events.controlevent; 
    1415 
    1516/** 
     
    2728public abstract class ControlAdapter : ControlListener { 
    2829 
    29     private import dwt.events.controlevent; 
     30 
    3031 
    3132/** 
  • trunk/src/dwt/events/controlevent.d

    r38 r41  
    1212 
    1313private import dwt.events.typedevent; 
     14private import dwt.widgets.event; 
    1415 
    1516/** 
     
    2122 
    2223public final class ControlEvent : TypedEvent { 
    23  
    24     private import dwt.widgets.event; 
    2524 
    2625/** 
  • trunk/src/dwt/events/controllistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.controlevent; 
    1415 
    1516/** 
     
    3132public interface ControlListener : DWTEventListener { 
    3233 
    33     private import dwt.events.controlevent; 
    34  
    3534/** 
    3635 * Sent when the location (x, y) of a control changes relative 
  • trunk/src/dwt/events/disposeevent.d

    r38 r41  
    1212 
    1313private import dwt.events.typedevent; 
    14  
     14private import dwt.widgets.event; 
     15     
    1516/** 
    1617 * Instances of this class are sent as a result of 
     
    2122 
    2223public final class DisposeEvent : TypedEvent { 
    23  
    24     private import dwt.widgets.event; 
    2524 
    2625/** 
  • trunk/src/dwt/events/disposelistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.disposeevent; 
    1415 
    1516/** 
     
    3031public interface DisposeListener : DWTEventListener { 
    3132 
    32     private import dwt.events.disposeevent; 
    33  
    3433/** 
    3534 * Sent when the widget is disposed. 
  • trunk/src/dwt/events/focusadapter.d

    r38 r41  
    1212 
    1313private import dwt.events.focuslistener; 
     14private import dwt.events.focusevent; 
    1415 
    1516/** 
     
    2627 */ 
    2728public abstract class FocusAdapter : FocusListener { 
    28  
    29     private import dwt.events.focusevent; 
    3029 
    3130/** 
  • trunk/src/dwt/events/focusevent.d

    r38 r41  
    1212 
    1313private import dwt.events.typedevent; 
     14private import dwt.widgets.event; 
    1415 
    1516/** 
     
    2122 
    2223public final class FocusEvent : TypedEvent { 
    23  
    24     private import dwt.widgets.event; 
    2524 
    2625/** 
  • trunk/src/dwt/events/focuslistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.focusevent; 
    1415 
    1516/** 
     
    3132public interface FocusListener : DWTEventListener { 
    3233 
    33     private import dwt.events.focusevent; 
    34  
    3534/** 
    3635 * Sent when a control gets focus. 
  • trunk/src/dwt/events/helpevent.d

    r38 r41  
    1212 
    1313private import dwt.events.typedevent; 
     14private import dwt.widgets.event; 
    1415 
    1516/** 
     
    2122 
    2223public final class HelpEvent : TypedEvent { 
    23  
    24     private import dwt.widgets.event; 
    2524 
    2625/** 
  • trunk/src/dwt/events/keyadapter.d

    r38 r41  
    1212 
    1313private import dwt.events.keylistener; 
     14private import dwt.events.keyevent; 
    1415 
    1516/** 
     
    2728public abstract class KeyAdapter : KeyListener { 
    2829 
    29     private import dwt.events.keyevent; 
     30 
    3031     
    3132/** 
  • trunk/src/dwt/events/keyevent.d

    r38 r41  
    1212 
    1313private import dwt.events.typedevent; 
     14private import dwt.widgets.event; 
    1415 
    1516/** 
     
    2223public class KeyEvent : TypedEvent { 
    2324 
    24     private import dwt.widgets.event; 
    2525//  private import dwt.util.util; 
    2626     
  • trunk/src/dwt/events/keylistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.keyevent; 
    1415 
    1516/** 
     
    3132public interface KeyListener : DWTEventListener { 
    3233 
    33     private import dwt.events.keyevent; 
    34  
    3534/** 
    3635 * Sent when a key is pressed on the system keyboard. 
  • trunk/src/dwt/events/menuadapter.d

    r38 r41  
    1212 
    1313private import dwt.events.menulistener; 
    14  
     14private import dwt.events.menuevent; 
     15         
    1516/** 
    1617 * This adapter class provides default implementations for the 
     
    2627 */ 
    2728public abstract class MenuAdapter : MenuListener { 
    28  
    29     private import dwt.events.menuevent; 
    3029 
    3130/** 
  • trunk/src/dwt/events/menuevent.d

    r38 r41  
    1212 
    1313private import dwt.events.typedevent; 
     14private import dwt.widgets.event; 
    1415 
    1516/** 
     
    2122 
    2223public final class MenuEvent : TypedEvent { 
    23  
    24     private import dwt.widgets.event; 
    2524 
    2625/** 
  • trunk/src/dwt/events/menulistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.menuevent; 
    1415 
    1516/** 
     
    3031public interface MenuListener : DWTEventListener { 
    3132 
    32     private import dwt.events.menuevent; 
    33  
    3433/** 
    3534 * Sent when a menu is hidden. 
  • trunk/src/dwt/events/modifyevent.d

    r38 r41  
    1212 
    1313private import dwt.events.typedevent; 
     14private import dwt.widgets.event; 
    1415 
    1516/** 
     
    2122 
    2223public final class ModifyEvent : TypedEvent { 
    23  
    24     private import dwt.widgets.event; 
    2524 
    2625/** 
  • trunk/src/dwt/events/modifylistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.modifyevent; 
    1415 
    1516/** 
     
    2829 */ 
    2930public interface ModifyListener : DWTEventListener { 
    30  
    31     private import dwt.events.modifyevent; 
    3231     
    3332/** 
  • trunk/src/dwt/events/mouseadapter.d

    r38 r41  
    1212 
    1313private import dwt.events.mouselistener; 
     14private import dwt.events.mouseevent; 
    1415 
    1516/** 
     
    2728 */ 
    2829public abstract class MouseAdapter : MouseListener { 
    29  
    30     private import dwt.events.mouseevent; 
    3130 
    3231/** 
  • trunk/src/dwt/events/mouseevent.d

    r38 r41  
    1212 
    1313private import dwt.events.typedevent; 
     14private import dwt.widgets.event; 
    1415 
    1516/** 
     
    2930 */ 
    3031public final class MouseEvent : TypedEvent { 
    31  
    32     private import dwt.widgets.event; 
    3332     
    3433    /** 
  • trunk/src/dwt/events/mousemovelistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.mouseevent; 
    1415 
    1516/** 
     
    2829 */ 
    2930public interface MouseMoveListener : DWTEventListener { 
    30      
    31     private import dwt.events.mouseevent; 
    3231 
    3332/** 
  • trunk/src/dwt/events/mousetrackadapter.d

    r38 r41  
    1212 
    1313private import dwt.events.mousetracklistener; 
     14private import dwt.events.mouseevent; 
    1415 
    1516/** 
     
    2728 */ 
    2829public abstract class MouseTrackAdapter : MouseTrackListener { 
    29  
    30     private import dwt.events.mouseevent; 
    3130 
    3231/** 
  • trunk/src/dwt/events/mousetracklistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.mouseevent; 
    1415 
    1516/** 
     
    3132 */ 
    3233public interface MouseTrackListener : DWTEventListener { 
    33  
    34     private import dwt.events.mouseevent; 
    3534 
    3635/** 
  • trunk/src/dwt/events/paintevent.d

    r38 r41  
    1212 
    1313private import dwt.events.typedevent; 
     14private import dwt.graphics.gc; 
     15private import dwt.widgets.event; 
    1416 
    1517/** 
     
    2022 */ 
    2123public final class PaintEvent : TypedEvent { 
    22      
    23     private import dwt.graphics.gc; 
    24     private import dwt.widgets.event; 
    2524 
    2625    /** 
  • trunk/src/dwt/events/paintlistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.paintevent; 
    1415 
    1516/** 
     
    3031public interface PaintListener : DWTEventListener { 
    3132 
    32     private import dwt.events.paintevent; 
    33  
    3433/** 
    3534 * Sent when a paint event occurs for the control. 
  • trunk/src/dwt/events/selectionadapter.d

    r38 r41  
    1212 
    1313private import dwt.events.selectionlistener; 
     14private import dwt.events.selectionevent; 
    1415 
    1516/** 
     
    2627 */ 
    2728public abstract class SelectionAdapter : SelectionListener { 
    28  
    29     private import dwt.events.selectionevent; 
    3029     
    3130/** 
  • trunk/src/dwt/events/selectionevent.d

    r38 r41  
    1212 
    1313private import dwt.events.typedevent; 
     14private import dwt.widgets.event; 
     15private import dwt.widgets.widget; 
    1416 
    1517/** 
     
    2325 */ 
    2426public class SelectionEvent : TypedEvent { 
    25      
    26     private import dwt.widgets.event; 
    27     private import dwt.widgets.widget; 
    2827     
    2928    /** 
  • trunk/src/dwt/events/selectionlistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.selectionevent; 
    1415 
    1516/** 
     
    3031 */ 
    3132public interface SelectionListener : DWTEventListener { 
    32  
    33     private import dwt.events.selectionevent; 
    3433 
    3534/** 
  • trunk/src/dwt/events/shelladapter.d

    r38 r41  
    1212 
    1313private import dwt.events.shelllistener; 
     14private import dwt.events.shellevent; 
    1415 
    1516/** 
     
    2627 */ 
    2728public abstract class ShellAdapter : ShellListener { 
    28  
    29     private import dwt.events.shellevent; 
    3029 
    3130/** 
  • trunk/src/dwt/events/shellevent.d

    r38 r41  
    1212 
    1313private import dwt.events.typedevent; 
     14private import dwt.widgets.event; 
    1415 
    1516/** 
     
    2021 */ 
    2122public final class ShellEvent : TypedEvent { 
    22  
    23     private import dwt.widgets.event; 
    2423 
    2524    /** 
  • trunk/src/dwt/events/shelllistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.shellevent; 
    1415 
    1516/** 
     
    2930 */ 
    3031public interface ShellListener : DWTEventListener { 
    31  
    32     private import dwt.events.shellevent; 
    3332 
    3433/** 
  • trunk/src/dwt/events/traverseevent.d

    r38 r41  
    1212 
    1313private import dwt.events.keyevent; 
     14private import dwt.widgets.event; 
    1415 
    1516/** 
     
    7778 */ 
    7879public class TraverseEvent : KeyEvent { 
    79      
    80     private import dwt.widgets.event; 
    8180 
    8281    /** 
  • trunk/src/dwt/events/traverselistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.traverseevent; 
    1415 
    1516/** 
     
    3031public interface TraverseListener : DWTEventListener { 
    3132 
    32     private import dwt.events.traverseevent; 
    33  
    3433/** 
    3534 * Sent when a traverse event occurs in a control. 
  • trunk/src/dwt/events/treeadapter.d

    r38 r41  
    1212 
    1313private import dwt.events.treelistener; 
     14private import dwt.events.treeevent; 
    1415 
    1516/** 
     
    2627 */ 
    2728public abstract class TreeAdapter : TreeListener { 
    28  
    29     private import dwt.events.treeevent; 
    3029 
    3130/** 
  • trunk/src/dwt/events/treeevent.d

    r38 r41  
    1212 
    1313private import dwt.events.selectionevent; 
    14  
     14private import dwt.widgets.event; 
     15     
    1516/** 
    1617 * Instances of this class are sent as a result of 
     
    2021 */ 
    2122public final class TreeEvent : SelectionEvent { 
    22  
    23     private import dwt.widgets.event; 
    2423 
    2524/** 
  • trunk/src/dwt/events/treelistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.treeevent; 
    1415 
    1516/** 
     
    3132public interface TreeListener : DWTEventListener { 
    3233 
    33     private import dwt.events.treeevent; 
    34  
    3534/** 
    3635 * Sent when a tree branch is collapsed. 
  • trunk/src/dwt/events/typedevent.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventobject; 
     14     
     15private import dwt.widgets.display; 
     16private import dwt.widgets.event; 
     17private import dwt.widgets.widget; 
     18 
     19private import dwt.util.util; 
    1420 
    1521/** 
     
    2127 */ 
    2228public class TypedEvent : DWTEventObject { 
    23      
    24     private import dwt.widgets.display; 
    25     private import dwt.widgets.event; 
    26     private import dwt.widgets.widget; 
    27  
    28     private import dwt.util.util; 
    2929 
    3030    /** 
  • trunk/src/dwt/events/verifylistener.d

    r38 r41  
    1212 
    1313private import dwt.internal.dwteventlistener; 
     14private import dwt.events.verifyevent; 
    1415 
    1516/** 
     
    3031public interface VerifyListener : DWTEventListener { 
    3132 
    32     private import dwt.events.verifyevent; 
    33  
    3433/** 
    3534 * Sent when the text is about to be modified. 
  • trunk/src/dwt/graphics/IDrawable.d

    r33 r41  
    1919 
    2020module dwt.graphics.IDrawable; 
     21private import dwt.graphics.gcdata; 
    2122 
    2223public interface IDrawable { 
    23     private import dwt.graphics.gcdata; 
    2424    public int internal_new_GC(GCData data); 
    2525    public void internal_dispose_GC(int handle, GCData data); 
  • trunk/src/dwt/graphics/color.d

    r33 r41  
    2222module dwt.graphics.color; 
    2323 
    24 /+ 
    25 import org.eclipse.swt.internal.win32.*; 
    26 import org.eclipse.swt.*; 
    27 +/ 
    28  
    29 /** 
    30  * Instances of this class manage the operating system resources that 
    31  * implement DWT's RGB color model. To create a color you can either 
    32  * specify the individual color components as integers in the range 
    33  * 0 to 255 or provide an instance of an <code>RGB</code>. 
    34  * <p> 
    35  * Application code must explicitly invoke the <code>Color.dispose()</code> 
    36  * method to release the operating system resources managed by each instance 
    37  * when those instances are no longer required. 
    38  * </p> 
    39  * 
    40  * @see RGB 
    41  * @see Device#getSystemColor 
    42  */ 
    43  
    44 public final class Color { 
    45  
    4624private import dwt.dwt; 
    4725private import dwt.graphics.rgb; 
     
    4927private import dwt.internal.win32.os; 
    5028private import std.string; 
     29 
     30/** 
     31 * Instances of this class manage the operating system resources that 
     32 * implement DWT's RGB color model. To create a color you can either 
     33 * specify the individual color components as integers in the range 
     34 * 0 to 255 or provide an instance of an <code>RGB</code>. 
     35 * <p> 
     36 * Application code must explicitly invoke the <code>Color.dispose()</code> 
     37 * method to release the operating system resources managed by each instance 
     38 * when those instances are no longer required. 
     39 * </p> 
     40 * 
     41 * @see RGB 
     42 * @see Device#getSystemColor 
     43 */ 
     44 
     45public final class Color { 
    5146 
    5247    /** 
  • trunk/src/dwt/graphics/cursor.d

    r40 r41  
    2222module dwt.graphics.cursor; 
    2323 
    24 /+ 
    25 import org.eclipse.swt.internal.win32.*; 
    26 import org.eclipse.swt.*; 
    27 +/ 
    28  
    2924private import dwt.graphics.device; 
    3025 
     26private import dwt.graphics.device; 
     27private import dwt.graphics.imagedata; 
     28private import dwt.graphics.image; 
     29 
     30private import dwt.util.util; 
     31private import std.string; 
     32private import dwt.dwt; 
     33private import dwt.internal.win32.os; 
     34private import dwt.internal.win32.types; 
    3135 
    3236/** 
     
    5660 
    5761public final class Cursor { 
    58  
    59     private import dwt.graphics.device; 
    60     private import dwt.graphics.imagedata; 
    61     private import dwt.graphics.image; 
    62  
    63     private import dwt.util.util; 
    64     private import std.string; 
    65     private import dwt.dwt; 
    66     private import dwt.internal.win32.os; 
    67     private import dwt.internal.win32.types; 
    6862 
    6963    /** 
  • trunk/src/dwt/graphics/device.d

    r38 r41  
    2222module dwt.graphics.device; 
    2323 
    24 /+ 
    25 import org.eclipse.swt.internal.*; 
    26 import org.eclipse.swt.internal.win32.*; 
    27 import org.eclipse.swt.*; 
    28 +/ 
    29  
    3024private import dwt.graphics.IDrawable; 
    31  
    32 /** 
    33  * This class is the abstract superclass of all device objects, 
    34  * such as the Display device and the Printer device. Devices 
    35  * can have a graphics context (GC) created for them, and they 
    36  * can be drawn on by sending messages to the associated GC. 
    37  */ 
    38  
    39 /+ TODO:  this was an abstract class, but I was having difficulties 
    40     with no implementations allowed  +/ 
    41  
    42 public class Device : IDrawable { 
    43  
    44  
    4525private 
    4626{ 
     
    6545} 
    6646 
    67  
     47/** 
     48 * This class is the abstract superclass of all device objects, 
     49 * such as the Display device and the Printer device. Devices 
     50 * can have a graphics context (GC) created for them, and they 
     51 * can be drawn on by sending messages to the associated GC. 
     52 */ 
     53 
     54/+ TODO:  this was an abstract class, but I was having difficulties 
     55    with no implementations allowed  +/ 
     56 
     57public class Device : IDrawable { 
    6858 
    6959    /* Debugging */ 
  • trunk/src/dwt/graphics/font.d

    r38 r41  
    1919