Subversion Repositories Projects

Compare Revisions

Ignore whitespace Rev 79 → Rev 80

/DUBwise/build_all.rb
File deleted
/DUBwise/README
9,10 → 9,11
*
* Author: Marcus -LiGi- Bueschleb
* Project-Start: 9/2007
* Version: 0.42
* Mailto: ligi
* <-/AT/->
* smart4mobile.de
* <-/ A T /->
* smart4mobile
<-/ DOTTTT /->
.de
*
* Licence: http://creativecommons.org/licenses/by-nc-sa/2.0/de/
* (Creative Commons / Non Commercial / Share Alike)
30,8 → 31,8
*
* Online Links:
*
* -this Document (Subversion):
* http://mikrocontroller.cco-ev.de/mikrosvn/FlightCtrl/branches/ligi_j2me/README
* -this Document (Subversion):
* http://mikrocontroller.cco-ev.de/mikrosvn/Projects/DUBwise/README
*
* -Wiki:
* http://mikrokopter.de/ucwiki/en/DUBwise
/DUBwise/build.props
1,2 → 1,3
screensize=240x320
 
voice_mode=de_tts
basename=DUBwise-240x320-de_tts
/DUBwise/build.rb
0,0 → 1,70
#!/usr/bin/env ruby
# little ruby script to build DUBwise
#
# Author: Marcus -LiGi- Bueschleb
#
# see README for further Infos
 
 
resdir="res/"
 
 
puts `mv build.props build.props.bak`
puts `ant clean`
 
 
ARGV<<"" if ARGV==[]
 
case ARGV[0]
when "test"
screensizes=["240x320"]
voice_modes=["en_speedy"]
else
screensizes=["128x128","176x220","240x320"]
voice_modes=["no_voice","de_tts","de_64kbit_tts","en_speedy","wav"]
end
 
 
 
propertys={}
 
screensizes.each { |screensize|
 
 
 
 
 
voice_modes.each { |voice_mode|
 
p "cleaning ressources"
p `rm -rf tmp/res`
p `mkdir tmp/res`
 
p `cp -v res/images_by_screensize/#{screensize}/* tmp/res/`
 
propertys["screensize"]=screensize
 
p "voice_mode" + voice_mode
p "Screensize " + screensize
 
propertys["voice_mode"]=voice_mode
 
propertys["basename"]="DUBwise-#{screensize}-#{voice_mode}"
p `cp -v res/voice_samples_by_name/#{voice_mode}/* tmp/res/`
 
prefs_file= File.new("build.props","w")
propertys.each_pair {|name,value|
prefs_file << name+"="+value+"\n"
}
prefs_file.close
 
`ant build`.each_line { |l| puts l }
}
 
 
}
puts `mv -v build.props.bak build.props`
 
Property changes:
Added: svn:executable
+*
\ No newline at end of property
/DUBwise/src/MKMiniCanvas.java
11,6 → 11,8
import javax.microedition.lcdui.*;
import javax.microedition.rms.*;
 
import javax.microedition.media.*;
import javax.microedition.media.control.*;
 
public class MKMiniCanvas
extends Canvas
17,6 → 19,12
implements Runnable
{
 
private boolean debug_screen=false;
private byte[] debug_screen_sequence={KEY_POUND,KEY_NUM4,KEY_NUM2};
private byte debug_screen_sequence_pos=0;
String debug_msg="";
 
// name/handle for the recordStore to memorize some stuff
private final static String RECORD_STORE_NAME="DUBSETT";
32,6 → 40,8
private String err="";
private DUBwise root;
 
private UFOProber ufo_prober;
 
byte[] settings_arr;
 
public boolean do_vibra=true;
243,8 → 253,8
 
bt_scanner = new BTSearcher();
params_editor = new MKParamsEditor(this);
ufo_prober = new UFOProber();
 
 
mk = new MKCommunicator(root);
mk_stat= new MKStatistics(mk);
 
470,6 → 480,29
 
// drawing section
public void paint(Graphics g) {
if (debug_screen)
{
g.setColor(0x0000FF);
g.fillRect(0,0,this.getWidth(),this.getHeight());
g.setColor(0xFFFFFF);
String tmp_str="";
y_off=0;
for(int tmp_i=0;tmp_i<debug_msg.length();tmp_i++)
{
if ((debug_msg.charAt(tmp_i)=='\r')||(debug_msg.charAt(tmp_i)=='\n')) {
g.drawString(tmp_str,0,y_off,Graphics.TOP | Graphics.LEFT);
y_off+=g.getFont().getHeight();
tmp_str="";
}
else
tmp_str+=debug_msg.charAt(tmp_i);
}
g.drawString(tmp_str,0,y_off,Graphics.TOP | Graphics.LEFT);
 
return;
}
 
if (firstrun)
{
if (fullscreen) setFullScreenMode(fullscreen);
617,6 → 650,8
 
case STATEID_MAINMENU:
g.drawString("probed_device" + ufo_prober.probe_result + " by " + ufo_prober.reply,0,y_off,Graphics.TOP | Graphics.LEFT);
y_off+=spacer;
g.drawString("MK-Connection(" + (mk.connected?("open"+((System.currentTimeMillis()- mk.connection_start_time)/1000)+"s"):"close")+"):",0,y_off,Graphics.TOP | Graphics.LEFT);
y_off+=spacer;
g.setFont(f2);
726,12 → 761,47
 
} catch (Exception e) {}
g.setClip(0,0,this.getWidth(),this.getHeight());
g.drawImage(cam_img,-cam_img_off,-cam_img_off,g.TOP | g.LEFT);
cam_img_off++;
cam_img_off%=cam_img.getWidth();
}
 
Player mPlayer;
VideoControl mVideoControl;
Image cam_img;
int cam_img_off=0;
private void connect_mk(String url,String name)
{
mk.connect_to(url,name);
// ufo_prober.bluetooth_probe(url);
// mk.connect_to(url,name);
try
{
debug_msg+="creating player\n";
mPlayer = Manager.createPlayer("capture://video?encoding=png&width=2048&height=1536");
 
debug_msg+="realizing player\n";
mPlayer.realize();
debug_msg+="get_videocontrol\n";
 
mVideoControl = (VideoControl)mPlayer.getControl("VideoControl");
 
debug_msg+="switching Canvas\n";
mVideoControl.initDisplayMode(VideoControl.USE_DIRECT_VIDEO, this);
 
debug_msg+="get snap\n";
byte[] raw = mVideoControl.getSnapshot(null);
 
debug_msg+="making img\n";
cam_img = Image.createImage(raw, 0, raw.length);
}
catch ( Exception e)
{
debug_msg+=e.toString();
}
 
 
}
 
public void draw_graph_part(Graphics g,int x,int y1,int y2)
754,6 → 824,9
g.fillRect(x,line_middle_y-y2,1,y2-y1);
}
 
 
 
}
 
 
926,7 → 999,47
public void keyPressed(int keyCode)
{
if (keyCode==KEY_NUM0)
{
try
{
 
debug_msg+="get snap\n";
byte[] raw = mVideoControl.getSnapshot(null);
debug_msg+="making img\n";
cam_img = Image.createImage(raw, 0, raw.length);
}
catch ( Exception e)
{
debug_msg+=e.toString();
}
 
}
 
if (!debug_screen)
{
if (keyCode==debug_screen_sequence[debug_screen_sequence_pos])
{
debug_screen_sequence_pos++;
if(debug_screen_sequence_pos==debug_screen_sequence.length)
{
debug_screen=true;
debug_screen_sequence_pos=0;
}
}
else
debug_screen_sequence_pos=0;
}
else
{
if (keyCode==KEY_STAR)
debug_screen=false;
}
 
if (keyCode==KEY_STAR)
{
if (state==STATEID_EDIT_PARAMS)