summaryrefslogtreecommitdiffstats
path: root/java/src/com
diff options
context:
space:
mode:
authorConstantin Kaplinsky <const@tightvnc.com>2002-05-29 10:59:52 +0000
committerConstantin Kaplinsky <const@tightvnc.com>2002-05-29 10:59:52 +0000
commit30f786aea60a43569796ae24bc0dfa06144f35a5 (patch)
tree1d89ace3b5d2c0167d5170ad7c628a27223f550f /java/src/com
parentfe079839e4bc1e84d902e7682330c7726a4a0a4f (diff)
downloadtigervnc-30f786aea60a43569796ae24bc0dfa06144f35a5.tar.gz
tigervnc-30f786aea60a43569796ae24bc0dfa06144f35a5.zip
Made the position field editable in paused and stopped modes.
Preparing for implementation of seeking to an arbitrary point. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@2508 3789f03b-4d11-0410-bbf8-ca57d06f2519
Diffstat (limited to 'java/src/com')
-rw-r--r--java/src/com/tightvnc/rfbplayer/ButtonPanel.java9
-rw-r--r--java/src/com/tightvnc/rfbplayer/FbsInputStream.java15
-rw-r--r--java/src/com/tightvnc/rfbplayer/RfbPlayer.java4
-rw-r--r--java/src/com/tightvnc/rfbplayer/VncCanvas.java7
4 files changed, 29 insertions, 6 deletions
diff --git a/java/src/com/tightvnc/rfbplayer/ButtonPanel.java b/java/src/com/tightvnc/rfbplayer/ButtonPanel.java
index 62fa88b3..1a9db17f 100644
--- a/java/src/com/tightvnc/rfbplayer/ButtonPanel.java
+++ b/java/src/com/tightvnc/rfbplayer/ButtonPanel.java
@@ -45,9 +45,9 @@ class ButtonPanel extends Panel implements ActionListener {
add(pauseButton);
pauseButton.addActionListener(this);
- posText = new TextField(4);
- posText.setEditable(false);
+ posText = new TextField(5);
add(posText);
+ posText.addActionListener(this);
}
public void setMode(int mode) {
@@ -57,12 +57,14 @@ class ButtonPanel extends Panel implements ActionListener {
playButton.setEnabled(true);
pauseButton.setLabel("Pause");
pauseButton.setEnabled(true);
+ posText.setEditable(false);
break;
case RfbPlayer.MODE_PAUSED:
playButton.setLabel("Stop");
playButton.setEnabled(true);
pauseButton.setLabel("Resume");
pauseButton.setEnabled(true);
+ posText.setEditable(true);
break;
default:
// case RfbPlayer.MODE_STOPPED:
@@ -70,6 +72,7 @@ class ButtonPanel extends Panel implements ActionListener {
playButton.setEnabled(true);
pauseButton.setLabel("Pause");
pauseButton.setEnabled(false);
+ posText.setEditable(true);
break;
}
player.setMode(mode);
@@ -99,6 +102,8 @@ class ButtonPanel extends Panel implements ActionListener {
} else if (evt.getSource() == pauseButton) {
setMode((player.getMode() == RfbPlayer.MODE_PAUSED) ?
RfbPlayer.MODE_PLAYBACK : RfbPlayer.MODE_PAUSED);
+ } else if (evt.getSource() == posText) {
+ player.setPos(Integer.parseInt(posText.getText()));
}
}
}
diff --git a/java/src/com/tightvnc/rfbplayer/FbsInputStream.java b/java/src/com/tightvnc/rfbplayer/FbsInputStream.java
index 59418d9e..30ee42b1 100644
--- a/java/src/com/tightvnc/rfbplayer/FbsInputStream.java
+++ b/java/src/com/tightvnc/rfbplayer/FbsInputStream.java
@@ -106,7 +106,20 @@ class FbsInputStream extends InputStream {
return (int)(timeOffset / 1000);
}
- public void resumeReading()
+ public void setPos(int pos)
+ {
+ }
+
+ public boolean isSeeking()
+ {
+ return false;
+ }
+
+ public void pausePlayback()
+ {
+ }
+
+ public void resumePlayback()
{
startTime = System.currentTimeMillis() - timeOffset;
}
diff --git a/java/src/com/tightvnc/rfbplayer/RfbPlayer.java b/java/src/com/tightvnc/rfbplayer/RfbPlayer.java
index 741736eb..16b3889a 100644
--- a/java/src/com/tightvnc/rfbplayer/RfbPlayer.java
+++ b/java/src/com/tightvnc/rfbplayer/RfbPlayer.java
@@ -194,6 +194,10 @@ public class RfbPlayer extends java.applet.Applet
}
}
+ public void setPos(int pos) {
+ fbsStream.setPos(pos);
+ }
+
public void updatePos() {
buttonPanel.setPos(fbsStream.getPos());
}
diff --git a/java/src/com/tightvnc/rfbplayer/VncCanvas.java b/java/src/com/tightvnc/rfbplayer/VncCanvas.java
index f421df59..e0d9994d 100644
--- a/java/src/com/tightvnc/rfbplayer/VncCanvas.java
+++ b/java/src/com/tightvnc/rfbplayer/VncCanvas.java
@@ -225,7 +225,7 @@ class VncCanvas extends Canvas {
throw new EOFException("Playback stopped");
}
if (player.getMode() == player.MODE_PLAYBACK) {
- player.fbsStream.resumeReading();
+ player.fbsStream.resumePlayback();
}
}
@@ -828,8 +828,9 @@ class VncCanvas extends Canvas {
//
void scheduleRepaint(int x, int y, int w, int h) {
- // Request repaint, deferred if necessary.
- repaint(player.deferScreenUpdates, x, y, w, h);
+ // Request repaint if not in the seeking mode.
+ if (!player.fbsStream.isSeeking())
+ repaint(player.deferScreenUpdates, x, y, w, h);
}
}