码迷,mamicode.com
首页 > 其他好文 > 详细

5.撤回/重做功能实现简略

时间:2021-06-16 17:48:29      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:读取   模型   widget   get   private   code   red   command   操作   

实现思路:

 把每次动作/事件压栈或者弹出。

直接代码

class LoadCommand :public QUndoCommand {
private:
    XXModel * xModel;
    int old;
    int new;
    
    QWidget* mWins;
public:
    LoadICommand(QWidget* widget, XXModel * model, int val);

    void redo() override;
    void undo() override;
};

//////////////////////////////////////////////////////////////
LoadCommand::LoadICommand(QWidget* widget, XXModel * model, int val): val(val), XXModel(model), QWidget(widget) 
{
/*新操作发生时 载入撤回or重做指令,压栈*/
/*读取原有属性*/
/*把目标值写入模型*/
}

void LoadImgEditConfigCommand::redo()
{
/*读取原有属性*/
/*把目标值写入模型*/
}

void LoadImgEditConfigCommand::undo()
{
/*读取原有属性*/
/*把目标值写入模型*/
}

 

5.撤回/重做功能实现简略

标签:读取   模型   widget   get   private   code   red   command   操作   

原文地址:https://www.cnblogs.com/linzloadonbook/p/14887398.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!