Changeset 681


Ignore:
Timestamp:
08/04/10 22:24:04 (18 months ago)
Author:
octorian
Message:

Consolidation of touchscreen code into the main platform libraries/builds

Location:
trunk
Files:
3 added
4 edited
28 copied

Legend:

Unmodified
Added
Removed
  • trunk/LogicMail/src/org/logicprobe/LogicMail/PlatformInfo.java

    r560 r681  
    4747     */ 
    4848    private static String[] infoClasses = { 
    49         "org.logicprobe.LogicMail.PlatformInfoBB50T", 
    5049        "org.logicprobe.LogicMail.PlatformInfoBB50", 
    51         "org.logicprobe.LogicMail.PlatformInfoBB47T", 
    5250        "org.logicprobe.LogicMail.PlatformInfoBB47", 
     51        "org.logicprobe.LogicMail.PlatformInfoBB46", 
    5352        "org.logicprobe.LogicMail.PlatformInfoBB42" 
    5453    }; 
  • trunk/LogicMail/src/org/logicprobe/LogicMail/ui/FieldFactory.java

    r576 r681  
    3434import net.rim.device.api.ui.component.TreeFieldCallback; 
    3535 
    36 import org.logicprobe.LogicMail.PlatformInfo; 
    3736import org.logicprobe.LogicMail.util.PlatformUtils; 
    3837 
     
    5150    }; 
    5251     
    53     /** 
    54      * Array of concrete FieldFactory classes, in order from the highest 
    55      * API version to the lowest, for touch screen devices. 
    56      */ 
    57     private static String[] factoryClassesTouch = { 
    58         "org.logicprobe.LogicMail.ui.FieldFactoryBB50T", 
    59         "org.logicprobe.LogicMail.ui.FieldFactoryBB47T", 
    60     }; 
    61  
    6252    public static synchronized FieldFactory getInstance() { 
    6353        if(instance == null) { 
    64             if(PlatformInfo.getInstance().hasTouchscreen()) { 
    65                 instance = (FieldFactory)PlatformUtils.getFactoryInstance(factoryClassesTouch); 
    66             } 
    67             else { 
    68                 instance = (FieldFactory)PlatformUtils.getFactoryInstance(factoryClasses); 
    69             } 
     54            instance = (FieldFactory)PlatformUtils.getFactoryInstance(factoryClasses); 
    7055        } 
    7156        return instance; 
  • trunk/LogicMail/src/org/logicprobe/LogicMail/ui/ScreenFactory.java

    r675 r681  
    3333import net.rim.device.api.ui.Screen; 
    3434 
    35 import org.logicprobe.LogicMail.PlatformInfo; 
    3635import org.logicprobe.LogicMail.model.AccountNode; 
    3736import org.logicprobe.LogicMail.model.MailRootNode; 
     
    5352    }; 
    5453 
    55     /** 
    56      * Array of concrete ScreenFactory classes, in order from the highest 
    57      * API version to the lowest, for touch screen devices. 
    58      */ 
    59     private static String[] factoryClassesTouch = { 
    60         "org.logicprobe.LogicMail.ui.ScreenFactoryBB50T", 
    61         "org.logicprobe.LogicMail.ui.ScreenFactoryBB47T", 
    62     }; 
    63      
    6454    public static synchronized ScreenFactory getInstance() { 
    6555        if(instance == null) { 
    66             if(PlatformInfo.getInstance().hasTouchscreen()) { 
    67                 instance = (ScreenFactory)PlatformUtils.getFactoryInstance(factoryClassesTouch); 
    68             } 
    69             else { 
    70                 instance = (ScreenFactory)PlatformUtils.getFactoryInstance(factoryClasses); 
    71             } 
     56            instance = (ScreenFactory)PlatformUtils.getFactoryInstance(factoryClasses); 
    7257        } 
    7358        return instance; 
  • trunk/LogicMail_BB50/src/org/logicprobe/LogicMail/ui/ScreenFactoryBB50.java

    r675 r681  
    3636import net.rim.device.api.ui.Ui; 
    3737import net.rim.device.api.ui.UiEngineInstance; 
     38import net.rim.device.api.ui.VirtualKeyboard; 
     39import net.rim.device.api.ui.component.Dialog; 
    3840import net.rim.device.api.ui.picker.FilePicker; 
    3941 
    40 public class ScreenFactoryBB50 extends ScreenFactoryBB42 { 
     42public class ScreenFactoryBB50 extends ScreenFactoryBB47 { 
    4143    public void attachScreenTransition(Screen screen, int transitionType) { 
    4244        UiEngineInstance uiEngine = Ui.getUiEngineInstance(); 
     
    9698            // know specifically when the FilePicker will work, we catch this 
    9799            // exception and fall back to our own implementation. 
    98             fileUrl = super.showFilePicker(); 
     100            FilePickerDialog dialog = new FilePickerDialog(); 
     101            if(hasTouchscreen) { 
     102                dialog.getVirtualKeyboard().setVisibility(VirtualKeyboard.HIDE_FORCE); 
     103            } 
     104            if(dialog.doModal() == Dialog.OK) { 
     105                fileUrl = dialog.getFileUrl(); 
     106            } 
     107            else { 
     108                fileUrl = null; 
     109            } 
    99110        } 
    100111         
Note: See TracChangeset for help on using the changeset viewer.