User:Mort Yao/iGEM: Difference between revisions

From OpenWetWare
Jump to navigationJump to search
(New page: == doc/readme.yaml == <html> <style type="text/css"> .S0 { font-family: 'Times New Roman'; color: #000000; font-size: 11pt; } .S2 { font-weight: bold; font-family: 'Verdan...)
(No difference)

Revision as of 18:55, 20 October 2010


doc/readme.yaml

<html>

<style type="text/css">

.S0 {

font-family: 'Times New Roman';

color: #000000;

font-size: 11pt;

}

.S2 {

font-weight: bold;

font-family: 'Verdana';

color: #000088;

font-size: 10pt;

}

span {

font-family: 'Verdana';

color: #000000;

font-size: 10pt;

}

</style>

<span><span class="S0"></span><br />

<span class="S2">MosQt库 (版本号0.10.14 alpha)</span>:<br />

<span class="S2">&nbsp;&nbsp;MView.h, MView.cpp</span>:<span class="S0"> MView视图类</span><br />

<span class="S2">&nbsp;&nbsp;MScene.h, MScene.cpp</span>:<span class="S0"> MScene场景类</span><br />

<span class="S2">&nbsp;&nbsp;MItem.h, MItemPainter.hxx, MItem.cpp</span>:<span class="S0"> MItem类</span><br />

<span class="S2">&nbsp;&nbsp;MWidget.h, MWidget.cpp</span>:<span class="S0"> MWidget类</span><br />

<span class="S2">&nbsp;&nbsp;MSplashScreen.h, MSplashScreen.cpp</span>:<span class="S0"> MSplashScreen启动窗口类</span><br />

<span class="S2">&nbsp;&nbsp;MosQt</span>:<span class="S0"> 宏定义</span><br />

<br />

<span class="S2">示例1 demoUiXml</span>:<br />

<span class="S2">&nbsp;&nbsp;.session</span>:<span class="S0"> SciTE工作文件</span><br />

<span class="S2">&nbsp;&nbsp;.pro</span>:<span class="S0"> qmake工程文件</span><br />

<span class="S2">&nbsp;&nbsp;.cpp</span>:<span class="S0"> 源文件</span><br />

<span class="S2">&nbsp;&nbsp;.ui.xml</span>:<span class="S0"> 界面XML</span><br />

<span class="S2">&nbsp;&nbsp;.project.xml</span>:<span class="S0"> 工程XML</span><br />

<span class="S2">&nbsp;&nbsp;.make_win.sh</span>:<span class="S0"> 编译生成 shell (for win)</span><br />

<span class="S2">&nbsp;&nbsp;.make_linux.sh</span>:<span class="S0"> &nbsp;编译生成 shell (for linux)</span><br />

<span class="S2">&nbsp;&nbsp;.make_freebsd.sh</span>:<span class="S0"> &nbsp;编译生成 shell (for freebsd)</span><br />

<span class="S2">&nbsp;&nbsp;.run_win.sh</span>:<span class="S0"> 运行 shell (for win)</span><br />

<span class="S2">&nbsp;&nbsp;.run_linux.sh</span>:<span class="S0"> 运行 shell (for linux)</span><br />

<span class="S2">&nbsp;&nbsp;.clean.sh</span>:<span class="S0"> 清除所有 编译生成文件 shell</span><br />

<br />

<span class="S2">示例2 iGaME</span>:<br />

<br />

<br />

<span class="S0"></span></span>

</html>


doc/docUiXml.yaml

<style type="text/css">

.S0 {

font-family: 'Times New Roman';

color: #000000;

font-size: 11pt;

}

.S2 {

font-weight: bold;

font-family: 'Verdana';

color: #000088;

font-size: 10pt;

}

span {

font-family: 'Verdana';

color: #000000;

font-size: 10pt;

}

</style>


UI XML Format Standard:


  - 标签的属性应严格在标签< >内部,使用字符串定义

  - 布尔值使用"0" / "1"定义

  - 绝不能重复定义任何属性

  - 允许定义暂时还不存在的属性,即使对外观没有任何影响

  - 建议所有常用的属性都进行定义;某些属性不定义会取默认值,但不推荐

  - 标签下的子标签视作对象的子对象,可以通过这种方式把对象作为其他对象的容器

  - 标签必须严格使用"/>"或"</label>"关闭,否则会出现不可预料的后果


UI XML Reference:


  id: 对象ID

  name: 对象名称

  category: 对象类别

  

  x: 对象X坐标(子对象使用原点在父对象中心的笛卡尔坐标系,最高级别对象使用屏幕坐标系)

  y: 对象Y坐标(子对象使用原点在父对象中心的笛卡尔坐标系,最高级别对象使用屏幕坐标系)

  zValue: 对象Z坐标(决定叠放顺序)


  width: 对象宽度

  height: 对象高度

  

  toolTip: 对象鼠标悬停提示文本

  color: 对象颜色,默认"#000000"

  

  isVisible: 对象是否可见,默认"1"

  isSelectable: 对象是否鼠标点击可选,默认"0"

  isMouseOverSelectable: 对象是否鼠标悬停可选,默认"0"

  isMovable: 对象是否可拖动,默认"0"

  

  isOutlineAvailable: 对象选中时轮廓是否可见

  outlineColor: 对象轮廓的颜色

  outlineWidth: 对象轮廓的粗细

  

  isTextVisible: 对象文本是否可见

  text: 对象文本

  textColor: 对象文本的颜色

  isAlternativeTextAvailable: 对象选中时替代文本是否可用

  alternativeText: 对象选中时替代文本

  alternativeTextColor: 对象选中时替代文本的颜色

  

  isFigureVisible: 对象几何形状是否可见

  figure: 对象几何形状:"RECTANGLE"(矩形);"ELLIPSE"(椭圆形);"ROUND_RECTANGLE"(圆角矩形)

  figureColor: 对象几何形状的颜色

  isAlternativeFigureAvailable: 对象选中时替代几何形状是否可用

  alternativeFigure: 对象选中时替代几何形状

  alternativeFigureColor: 对象选中时替代几何形状的颜色

  

  isPixmapVisible: 对象像素图是否可见

  pixmap: 对象像素图的文件路径

  isAlternativePixmapAvailable: 对象选中时替代像素图是否可用

  alternativePixmap: 对象选中时替代像素图的文件路径



</html>


doc/docMosQt.wiki

MosQt UI Framework

  1. 包含头文件,仅需一行:

#include <MosQt>

  1. 声明界面元素:

namespace uiObjects {
MView * mainView;
MScene * mainScene[10];
MItem *item[100];
MWidget *widget[100];
};
// 所有界面元素(包括:MView*、MScene*、MItem*、MWidget*)都必须在这里定义,否则会产生不可预料的后果= =
// namespace名称可自定
using namespace uiObjects;

  1. 主函数:

BEGIN(projectName)
{
   /* 函数main(),用于描述和创建界面元素 */
   
   // projectName->setPixmap("pixmapPath");
   // 设置程序splash窗口图片,程序较大启动较慢时可能会需要
   // 程序启动完成后splash窗口会自动析构,无需程序员管理
   
   // mainView = new MView();
   // 创建窗口
   // mainView->show();
   // 设置窗口为显示
   // mainView->setWindowTitle("projectName");
   // 设置窗口名称
   
   // mainScene = new MScene();
   // 创建场景
   // mainView->setScene(mainScene);
   // 将该场景设置窗口的当前场景
   // 注意:场景用于管理界面对象
   // 任何MView窗口必须通过当前场景来显示和处理对象,因此必须给窗口设置一个当前场景
   // 一个场景可以被设置为多个窗口的当前场景,也可以不被设置为任何一个窗口的当前场景
   // 显然,只有当前窗口的当前场景中的界面对象才是用户可见的
   
   // item[0] = new MItem();
   // 创建MItem界面对象
   // mainScene->addItem(item[0]);
   // 添加该对象到某个场景
   // item[0]->setText("Hello world");
   // 对象的各种属性设置。。。
   // 注意:场景用于管理界面对象,一个对象可以被添加到多个场景,也可以不被添加到任何场景
   // 显然,只有被添加到当前窗口的当前场景中的界面对象才是用户可见的
   
   // QLineEdit* lineEdit = new QLineEdit;
   // widget[0] = mainScene->addWidget(lineEdit);
   // 创建MWidget界面对象
   // MWidget界面对象是用于Qt原生widget的容器
   // 可以通过MWidget向场景中添加任何Qt原生widget
   
}
END(projectName)

  1. 事件处理函数:

BEGIN_EVENTS(projectName)
{
   /* 函数handler(),隐藏了Qt的signal-slot机制,
   便于在一个函数内实现界面逻辑,且不需要创建任何新类 */
   
   // MView* EVENT_VIEW 返回发生事件的窗口
   // MScene* EVENT_SCENE 返回发生事件的场景
   // MItem* EVENT_ITEM 返回发生事件的对象
   // QMouseEvent* MOUSE_EVENT 返回发生的键盘事件
   // QKeyEvent* KEY_EVENT 返回发生的键盘事件
   
   // bool MOUSE_LEFT 鼠标左键点击事件
   // bool MOUSE_RIGHT 鼠标右键点击事件
}
END_EVENTS(projectName)

MView Class Reference

The MView class provides a surface for managing scenes.

  1. include <MView>

Inherits QGraphicsView.

Public Functions

  • MView(QWidget* parent)
Constructor
  • ~MView()
Destructor


  • QGraphicsScene* scene () const
返回当前场景
  • void setScene(QGraphicsScene* scene)
设置当前场景


MScene Class Reference

The MScene class provides a surface for managing items.

  1. include <MScene>

Inherits QGraphicsScene.

Public Functions

  • MScene(QObject* parent = 0)
Constructor
  • ~MScene()
Destructor


  • void addItem(QGraphicsItem* item)
添加对象到场景
  • MItem* selectedItem() const;
返回场景中选中的对象(唯一)
  • void selectedItemBringToFront();
将选中对象置于最前端
  • void selectedItemSendToBack();
将选中对象置于最底端

void loadXml(const QString& fileName)

读取场景XML

void writeXml(const QString& fileName)

写入场景XML


MItem Class Reference

The MItem class provides graphical items.

  1. include <MItem>

Inherits QGraphicsItem.

Public Functions

  • MItem()
Constructor
  • ~MItem()
Destructor


  • QString id()
返回对象ID
  • void setId(QString id)
设置对象ID,默认值为空串
  • QString name()
返回对象名称
  • void setName(QString name)
设置对象名称,默认值为空串
  • QString category()
返回对象类别
  • void setCategory(QString category)
设置对象类别,默认值为空串


  • QPointF pos()
返回对象坐标
  • void setPos(qreal x, qreal y)
设置对象坐标,默认值为QPointF(0, 0)
  • qreal x()
返回对象X坐标
  • void setX(qreal x)
设置对象X坐标,默认值为0
  • qreal y()
返回对象Y坐标
  • void setY(qreal y)
设置对象Y坐标,默认值为0
  • qreal zValue ()
返回对象Z坐标
  • void setZValue(qreal z )
设置对象Z坐标(决定对象的叠放顺序),默认值为0
  • void toolTip(const QString& toolTip)
返回鼠标悬停提示文本
  • void setToolTip(const QString& toolTip)
设置鼠标悬停提示文本,默认值为空串
  • bool isVisible ()
检查对象是否显示
  • void setVisible(bool isVisible)
设置对象是否显示,默认值为true


  • QColor color()
返回对象的颜色
  • void setColor(QColor color)
设置对象的颜色,默认值为QColor(0, 0, 0)
注意,这里的颜色仅仅为形式上,不起任何作用
对象的事实外观颜色由其几何形状的颜色或像素图等属性决定
  • qreal width()
返回对象宽度
  • void setWidth(qreal width)
设置对象宽度,默认值为100
  • qreal height()
返回对象高度
  • void setHeight(qreal height)
设置对象高度,默认值为100
  • qreal padding()
返回对象填充宽度
  • void setPadding(qreal padding)
设置对象填充宽度,默认值为0
  • qreal margin()
返回对象边缘宽度
  • void setMargin(qreal margin)
设置对象边缘宽度,默认值为0


  • bool isSelectable()
检查对象是否鼠标点击可选
  • void setSelectable(bool isSelectable)
设置对象是否鼠标点击可选,默认值为false
  • bool isMouseOverSelectable()
检查对象是否鼠标悬停可选
  • void setMouseOverSelectable(bool isMouseOverSelectable)
设置对象是否鼠标悬停可选,默认值为false
  • bool isMovable()
检查对象是否可拖动
  • void setMovable(bool isMovable)
设置对象是否可拖动,默认值为false


  • QColor outlineColor()
返回对象轮廓的颜色
  • void setOutlineColor(QColor outlineColor)
设置对象轮廓的颜色,默认值为QColor(0, 0, 255)
  • int outlineWidth()
返回对象轮廓的粗细
  • void setOutlineWidth(int outlineWidth)
设置对象轮廓的粗细,默认值为5
  • Qt::PenStyle outlineStyle()
返回对象轮廓的线型
  • void setOutlineStyle(Qt::PenStyle outlineStyle)
设置对象轮廓的线型,默认值为Qt::SolidLine
  • bool isOutlineAvailable()
检查选中时对象轮廓是否显示
  • void setOutlineAvailable(bool isOutlineAvailable)
设置选中时对象轮廓是否显示,默认值为false


  • QString text()
返回对象标签文字
  • void setText(QString text)
设置对象标签文字,默认值为空串
  • QFont textFont()
返回对象标签文字的字体
  • void setTextFont(QFont textFont)
设置对象标签文字的字体,默认值为QFont("Arial", 10, QFont::Normal)
  • QColor textColor()
返回对象标签文字的颜色
  • void setTextColor(QColor textColor)
设置对象标签文字的颜色,默认值为QColor(255, 0, 0)
  • bool isTextVisible()
检查对象标签文字是否显示
  • void setTextVisible(bool isTextVisible)
设置对象标签文字是否显示,默认值为true


  • QString alternativeText()
返回对象选中时替代标签文字
  • void setAlternativeText(QString alternativeText)
设置对象选中时替代标签文字,默认值为空串
  • QFont alternativeTextFont()
返回对象选中时替代标签文字的字体
  • void setAlternativeTextFont(QFont alternativeTextFont)
设置对象选中时替代标签文字的字体,默认值为QFont("Arial", 10, QFont::Normal)
  • QColor alternativeTextColor()
返回对象选中时替代标签文字的颜色
  • void setAlternativeTextColor(QColor alternativeTextColor)
设置对象选中时替代标签文字的颜色,默认值为QColor(255, 0, 0)
  • bool isAlternativeTextAvailable()
检查对象选中时替代标签文字是否可用
  • void setAlternativeTextAvailable(bool isAlternativeTextAvailable)
设置对象选中时替代标签文字是否可用,默认值为false


  • QString figure()
返回对象几何形状
  • void setFigure(QString figure)
设置对象几何形状,默认值为"RECTANGLE"
可用几何形状:
  • "RECTANGLE" - 矩形
  • "ELLIPSE" - 椭圆形
  • "ROUND_RECTANGLE" - 圆角矩形
  • QColor figureColor()
返回对象几何形状的颜色
  • void setFigureColor(QColor figureColor)
设置对象几何形状的颜色,默认值为QColor(0, 0, 0)
  • bool isFigureVisible()
检查对象几何形状是否显示
  • void setFigureVisible(bool isFigureVisible)
设置对象几何形状是否显示,默认值为false


  • QString alternativeFigure()
返回对象选中时替代几何形状
  • void setAlternativeFigure(QString alternativeFigure)
设置对象选中时替代几何形状,默认值为空串
  • QColor alternativeFigureColor()
返回对象选中时替代几何形状的颜色
  • void setAlternativeFigureColor(QColor alternativeFigureColor)
设置对象选中时替代几何形状的颜色,默认值为QColor(0, 0, 0)
  • bool isAlternativeFigureAvailable()
检查对象选中时替代几何形状是否可用
  • void setAlternativeFigureAvailable(bool isAlternativeFigureAvailable)
设置对象选中时替代几何形状是否可用,默认值为false


  • QString pixmap()
返回对象像素图的文件路径
  • void setPixmap(QString pixmap)
设置对象像素图的文件路径,默认值为空串
  • bool isPixmapVisible()
检查对象像素图是否显示
  • void setPixmapVisible(bool isPixmapVisible)
设置对象像素图是否显示,默认值为false


  • QString alternativePixmap()
返回对象选中时替代像素图的文件路径
  • void setAlternativePixmap(QString alternativePixmap)
设置对象选中时替代像素图的文件路径,默认值为空串
  • bool isAlternativePixmapAvailable()
检查对象选中时替代像素图是否可用
  • void setAlternativePixmapAvailable(bool isAlternativePixmapAvailable)
设置对象选中时替代像素图是否可用,默认值为false