added resizeto and moveto commands
This commit is contained in:
parent
4d16109457
commit
9c35bbdd40
3 changed files with 61 additions and 4 deletions
|
@ -20,7 +20,7 @@
|
||||||
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
// DEALINGS IN THE SOFTWARE.
|
// DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
// $Id: CurrentWindowCmd.cc,v 1.6 2003/09/10 14:07:48 fluxgen Exp $
|
// $Id: CurrentWindowCmd.cc,v 1.7 2003/10/25 22:11:22 fluxgen Exp $
|
||||||
|
|
||||||
#include "CurrentWindowCmd.hh"
|
#include "CurrentWindowCmd.hh"
|
||||||
|
|
||||||
|
@ -80,3 +80,21 @@ void ResizeCmd::real_execute() {
|
||||||
fbwindow().width() + m_step_size_x * fbwindow().winClient().width_inc,
|
fbwindow().width() + m_step_size_x * fbwindow().winClient().width_inc,
|
||||||
fbwindow().height() + m_step_size_y * fbwindow().winClient().height_inc );
|
fbwindow().height() + m_step_size_y * fbwindow().winClient().height_inc );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MoveToCmd::MoveToCmd(const int step_size_x, const int step_size_y) :
|
||||||
|
m_step_size_x(step_size_x), m_step_size_y(step_size_y) { }
|
||||||
|
|
||||||
|
void MoveToCmd::real_execute() {
|
||||||
|
fbwindow().move(
|
||||||
|
m_step_size_x,
|
||||||
|
m_step_size_y );
|
||||||
|
}
|
||||||
|
|
||||||
|
ResizeToCmd::ResizeToCmd(const int step_size_x, const int step_size_y) :
|
||||||
|
m_step_size_x(step_size_x), m_step_size_y(step_size_y) { }
|
||||||
|
|
||||||
|
void ResizeToCmd::real_execute() {
|
||||||
|
fbwindow().resize(
|
||||||
|
m_step_size_x * fbwindow().winClient().width_inc,
|
||||||
|
m_step_size_y * fbwindow().winClient().height_inc );
|
||||||
|
}
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
// DEALINGS IN THE SOFTWARE.
|
// DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
// $Id: CurrentWindowCmd.hh,v 1.5 2003/09/10 14:07:48 fluxgen Exp $
|
// $Id: CurrentWindowCmd.hh,v 1.6 2003/10/25 22:11:22 fluxgen Exp $
|
||||||
|
|
||||||
#ifndef CURRENTWINDOWCMD_HH
|
#ifndef CURRENTWINDOWCMD_HH
|
||||||
#define CURRENTWINDOWCMD_HH
|
#define CURRENTWINDOWCMD_HH
|
||||||
|
@ -69,6 +69,7 @@ private:
|
||||||
const int m_workspace_num;
|
const int m_workspace_num;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// move cmd, relative position
|
||||||
class MoveCmd: public WindowHelperCmd {
|
class MoveCmd: public WindowHelperCmd {
|
||||||
public:
|
public:
|
||||||
explicit MoveCmd(const int step_size_x, const int step_size_y);
|
explicit MoveCmd(const int step_size_x, const int step_size_y);
|
||||||
|
@ -80,13 +81,37 @@ private:
|
||||||
const int m_step_size_y;
|
const int m_step_size_y;
|
||||||
};
|
};
|
||||||
|
|
||||||
// resize cmd
|
// resize cmd, relative size
|
||||||
class ResizeCmd: public WindowHelperCmd{
|
class ResizeCmd: public WindowHelperCmd{
|
||||||
public:
|
public:
|
||||||
explicit ResizeCmd(int step_size_x, int step_size_y);
|
explicit ResizeCmd(int step_size_x, int step_size_y);
|
||||||
protected:
|
protected:
|
||||||
void real_execute();
|
void real_execute();
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
const int m_step_size_x;
|
||||||
|
const int m_step_size_y;
|
||||||
|
};
|
||||||
|
|
||||||
|
class MoveToCmd: public WindowHelperCmd {
|
||||||
|
public:
|
||||||
|
explicit MoveToCmd(const int step_size_x, const int step_size_y);
|
||||||
|
protected:
|
||||||
|
void real_execute();
|
||||||
|
|
||||||
|
private:
|
||||||
|
const int m_step_size_x;
|
||||||
|
const int m_step_size_y;
|
||||||
|
};
|
||||||
|
|
||||||
|
// resize cmd
|
||||||
|
class ResizeToCmd: public WindowHelperCmd{
|
||||||
|
public:
|
||||||
|
explicit ResizeToCmd(int step_size_x, int step_size_y);
|
||||||
|
protected:
|
||||||
|
void real_execute();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
const int m_step_size_x;
|
const int m_step_size_x;
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
// DEALINGS IN THE SOFTWARE.
|
// DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
// $Id: FbCommandFactory.cc,v 1.18 2003/09/29 14:22:07 fluxgen Exp $
|
// $Id: FbCommandFactory.cc,v 1.19 2003/10/25 22:11:22 fluxgen Exp $
|
||||||
|
|
||||||
#include "FbCommandFactory.hh"
|
#include "FbCommandFactory.hh"
|
||||||
|
|
||||||
|
@ -62,6 +62,7 @@ FbCommandFactory::FbCommandFactory() {
|
||||||
"maximizewindow",
|
"maximizewindow",
|
||||||
"minimize",
|
"minimize",
|
||||||
"minimizewindow",
|
"minimizewindow",
|
||||||
|
"moveto",
|
||||||
"move",
|
"move",
|
||||||
"movedown",
|
"movedown",
|
||||||
"moveleft",
|
"moveleft",
|
||||||
|
@ -80,6 +81,7 @@ FbCommandFactory::FbCommandFactory() {
|
||||||
"quit",
|
"quit",
|
||||||
"raise",
|
"raise",
|
||||||
"reconfigure",
|
"reconfigure",
|
||||||
|
"resizeto",
|
||||||
"resize",
|
"resize",
|
||||||
"resizehorizontal",
|
"resizehorizontal",
|
||||||
"resizevertical",
|
"resizevertical",
|
||||||
|
@ -144,10 +146,22 @@ FbTk::Command *FbCommandFactory::stringToCommand(const std::string &command,
|
||||||
is >> dx >> dy;
|
is >> dx >> dy;
|
||||||
return new ResizeCmd(dx, dy);
|
return new ResizeCmd(dx, dy);
|
||||||
}
|
}
|
||||||
|
else if (command == "resizeto") {
|
||||||
|
std::istringstream is(arguments);
|
||||||
|
int dx = 0, dy = 0;
|
||||||
|
is >> dx >> dy;
|
||||||
|
return new ResizeToCmd(dx, dy);
|
||||||
|
}
|
||||||
else if (command == "resizehorizontal")
|
else if (command == "resizehorizontal")
|
||||||
return new ResizeCmd(atoi(arguments.c_str()),0);
|
return new ResizeCmd(atoi(arguments.c_str()),0);
|
||||||
else if (command == "resizevertical")
|
else if (command == "resizevertical")
|
||||||
return new ResizeCmd(0,atoi(arguments.c_str()));
|
return new ResizeCmd(0,atoi(arguments.c_str()));
|
||||||
|
else if (command == "moveto") {
|
||||||
|
std::istringstream is(arguments);
|
||||||
|
int dx = 0, dy = 0;
|
||||||
|
is >> dx >> dy;
|
||||||
|
return new MoveToCmd(dx,dy);
|
||||||
|
}
|
||||||
else if (command == "move") {
|
else if (command == "move") {
|
||||||
std::istringstream is(arguments);
|
std::istringstream is(arguments);
|
||||||
int dx = 0, dy = 0;
|
int dx = 0, dy = 0;
|
||||||
|
|
Loading…
Reference in a new issue