Ignore:
Timestamp:
Dec 26, 2007, 4:47:05 PM (18 years ago)
Author:
lpino
Message:

(Decorations.java) - Uncommented some menu code

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/plugins/org.eclipse.swt/Eclipse SWT/pm/org/eclipse/swt/widgets/Decorations.java

    r32 r49  
    9595//@@TODO(dmik)   
    9696//      Image image;
    97 //      Menu menuBar;
    98 //      Menu [] menus;
    99 //      MenuItem [] items;
     97        Menu menuBar;
     98        Menu [] menus;
     99        MenuItem [] items;
    100100        Control savedFocus;
    101101        Button defaultButton, saveDefault;
     
    108108//      * Windows reserves the values 0..100.
    109109//      */
    110 //      static final int ID_START = 100;
     110//@@TODO (lpino): For now we keep this in place
     111        static final int ID_START = 100;
    111112
    112113    int frameHandle;
     
    176177}
    177178
    178 //@@TODO(dmik)
    179 //void add (Menu menu) {
    180 //      if (menus == null) menus = new Menu [4];
    181 //      for (int i=0; i<menus.length; i++) {
    182 //              if (menus [i] == null) {
    183 //                      menus [i] = menu;
    184 //                      return;
    185 //              }
    186 //      }
    187 //      Menu [] newMenus = new Menu [menus.length + 4];
    188 //      newMenus [menus.length] = menu;
    189 //      System.arraycopy (menus, 0, newMenus, 0, menus.length);
    190 //      menus = newMenus;
    191 //}
    192 //
    193 //void add (MenuItem item) {
    194 //      if (items == null) items = new MenuItem [12];
    195 //      for (int i=0; i<items.length; i++) {
    196 //              if (items [i] == null) {
    197 //                      item.id = i + ID_START;
    198 //                      items [i] = item;
    199 //                      return;
    200 //              }
    201 //      }
    202 //      item.id = items.length + ID_START;
    203 //      MenuItem [] newItems = new MenuItem [items.length + 12];
    204 //      newItems [items.length] = item;
    205 //      System.arraycopy (items, 0, newItems, 0, items.length);
    206 //      items = newItems;
    207 //}
     179
     180void add (Menu menu) {
     181        if (menus == null) menus = new Menu [4];
     182        for (int i=0; i<menus.length; i++) {
     183                if (menus [i] == null) {
     184                        menus [i] = menu;
     185                        return;
     186                }
     187        }
     188        Menu [] newMenus = new Menu [menus.length + 4];
     189        newMenus [menus.length] = menu;
     190        System.arraycopy (menus, 0, newMenus, 0, menus.length);
     191        menus = newMenus;
     192}
     193
     194void add (MenuItem item) {
     195        if (items == null) items = new MenuItem [12];
     196        for (int i=0; i<items.length; i++) {
     197                if (items [i] == null) {
     198                        item.id = i + ID_START;
     199                        items [i] = item;
     200                        return;
     201                }
     202        }
     203        item.id = items.length + ID_START;
     204        MenuItem [] newItems = new MenuItem [items.length + 12];
     205        newItems [items.length] = item;
     206        System.arraycopy (items, 0, newItems, 0, items.length);
     207        items = newItems;
     208}
    208209
    209210void bringToTop () {
     
    323324//                      }
    324325//              }
    325 //      }
    326 //      if (OS.IsPPC) {
    327 //              /*
    328 //              * Note on WinCE PPC.  Close the shell when user taps CTRL-Q.
    329 //              * IDOK represents the "Done Button" which also closes the shell.
    330 //              */
    331 //              accel.fVirt = OS.FVIRTKEY | OS.FCONTROL;
    332 //              accel.key = 'Q';
    333 //              accel.cmd = OS.IDOK;
    334 //              OS.MoveMemory (buffer1, accel, size);
    335 //              System.arraycopy (buffer1, 0, buffer2, nAccel * size, size);
    336 //              nAccel++;                       
    337326//      }
    338327//      if (nAccel != 0) hAccel = OS.CreateAcceleratorTable (buffer2, nAccel);
     
    799788//      }
    800789//}
    801 //
    802 //void remove (MenuItem item) {
    803 //      if (items == null) return;
    804 //      items [item.id - ID_START] = null;
    805 //      item.id = -1;
    806 //}
     790
     791void remove (MenuItem item) {
     792        if (items == null) return;
     793        items [item.id - ID_START] = null;
     794        item.id = -1;
     795}
    807796
    808797boolean restoreFocus () {
Note: See TracChangeset for help on using the changeset viewer.