Tarefas de Interação


Esta página foi organizada por: José Antonio Luján Minchola

[Vanio F. de Melo, José A. L. Minchola e Mercedes G. Marques] [Harlen C. Batagelo] [Jorge Kawamura e Paulo G. Seifer] [Luiz F. S. Wetzel]

Introdução

O objetivo desta página é organizar os trabalhos entregues pelos alunos da disciplina IA369J, correspondentes as especificações das tarefas de interação de um Editor Gráfico 2D usando PPS.

Uma Tarefa de Interação é o conjunto de ações para a entrada de uma informação (dados válidos semanticamente) no contexto de um aplicativo. Para especificar as tarefas de interação existem muitos modelos de diálogo: Modelos de sintaxe (exemplo: BNF), Modelos visuais (exemplo: máquina de estados) e Propositional Productions Systems (PPS).

Um PPS consiste de uma definição de espaço de estado e um conjunto de regras. Um espaço de estado é caracterizado por um conjunto de condições parecidos aos estados e entradas numa máquina de estados, as condições são agrupadas em campos (Fields). Uma regra consiste de um lado esquerdo chamado critério e um lado direito chamado consequência.

Os trabalhos mostrados nesta página, usam o modelo PPS que reunê muitas vantagens do modelo de máquina de estados (visual) e os modelos de sintaxe.


Lista de exercícios:

Especificações das Tarefas de Interação

6a Lista de Exercícios

Grupo 1: Vanio Fragoso de Melo

  José Antonio Luján Minchola

  Mercedes Rocio Gonzales Marquez

Especificando com uso de PPS duas tarefas de interação um editor gráfico 2D.

 
Tarefas:  fazer um retângulo e apagá-lo no editor gráfico 2D.

   a)Espaço de Estado

         CampoAtivaComando(não-comando, comando-retângulo,comando-linha, ...);
         CampoSemânticoObjetoSelecionado(não-seleção,seleção-retângulo,seleção-linha,...);
         CampoModoArraste(linha-elástica,círculo-elástico,...,seleção-arraste,seleção-não-arraste);
         CampoEntrada(evento nulo,mouse pressionado,solta mouse,menu-linha,menu-retângulo,...,menu-delete);
         CampoAção(desenha-retângulo,desenha-linha,...,guarda-ponto-mouse,apaga-linha,apaga-retângulo,
                                   ...,edita-linha,edita-retângulo,...,move-retângulo,move-linha,...);

           b) Conjunto Parcial de Regras (considerando unicamente as duas tarefas)

         b.1) Não-comando, Menu-retângulo Comando-retângulo, Não-arraste

         b.2) Comando-retângulo, mouse pressionado retângulo-elástico, guarda-ponto-mouse

         b.3) Retângulo-elástico, evento nulo retângulo-elástico

         b.4) Retângulo-elástico, solta mouse não-arraste, desenha-retângulo

         b.5) Menu-delete, seleção-retângulo apaga-retângulo, não-comando
 

Especificações das Tarefas de Interação

6a Lista de Exercícios

Harlen C. Batagelo

3 - TAREFAS DE INTERAÇÃO USANDO PPS

Field ActiveCmd (PickCmd, EraseCmd, RotateCmd, LineCmd, TriangleCmd, RectCmd, CircleCmd)

PickCmd ?Ferramenta ?pick? ativada. Modifica menu e ícone da barra de ferramentas?
EraseCmd ?Ferramenta ?erase? ativada. Modifica menu e ícone da barra de ferramentas?
RotateCmd "Ferramenta 'rotate' ativada. Modifica menu e ícone da barra de ferramentas"
LineCmd ?Ferramenta ?line? ativada. Modifica menu e ícone da barra de ferramentas?
TriangleCmd ?Ferramenta ?triangle? ativada. Modifica menu e ícone da barra de ferramentas?
RectCmd ?Ferramenta ?rectangle? ativada. Modifica menu e ícone da barra de ferramentas?
CircleCmd ?Ferramenta ?circle? ativada. Modifica menu e ícone da barra de ferramentas?

State Field SelectedObj (NoSelection, LineSel, TriangleSel, RectSel, CircleSel)

NoSelection ?Nenhuma primitiva selecionada?
LineSel ?Linha selecionada?
TriangleSel ?Triângulo selecionado?
RectSel ?Retângulo selecionado?
CircleSel ?Círculo selecionado?

Field DragMode (RubberLine, RubberTrianglePt1, RubberTrianglePt2, RubberTrianglePt3, RubberRect, RubberCircle, DraggingLine, NotDraggingLine, DraggingTriangle, NotDraggingTriangle, DraggingPt1, NotDraggingPt1, DraggingPt2, NotDraggingPt2, DraggingPt3, NotDraggingPt3, DraggingRect, NotDraggingRect, DraggingCircle, NotDraggingCircle, RotatingLine, NotRotatingLine, RotatingTriangle, NotRotatingTriangle, RotatingRect, NotRotatingRect)

RubberLine ?Rubberbanding ativado para uma linha?
RubberTrianglePt1 ?Rubberbanding ativado para as linhas que conectam a coordenada 1 de um triângulo?
RubberTrianglePt2 ?Rubberbanding ativado para as linhas que conectam a coordenada 2 de um triângulo?
RubberTrianglePt3 ?Rubberbanding ativado para as linhas que conectam a coordenada 3 de um triângulo?
RubberRect ?Rubberbanding ativado para um retângulo?
RubberCircle ?Rubberbanding ativado para uma elipse?
DraggingLine ?Arrastando uma linha?
NotDraggingLine ?Encerra arrasto da linha?
DraggingTriangle ?Arrastando um triângulo?
NotDraggingTriangle ?Encerra arrasto do triângulo"
DraggingPt1 ?Arrastando 1a. coordenada de um triângulo?
NotDraggingPt1 ?Encerra arrasto da 1a. coordenada do triângulo?
DraggingPt2 ?Arrastando 2a. coordenada de um triângulo?
NotDraggingPt2 ?Encerra arrasto da 2a. coordenada do triângulo?
DraggingPt3 ?Arrastando 3a. coordenada de um triângulo?
NotDraggingPt3 ?Encerra arrasto da 3a. coordenada do triângulo?
DraggingRect ?Arrastando um retângulo?
NotDraggingRect ?Encerra arrasto do retângulo?
DraggingCircle ?Arrastando um círculo?
NotDraggingCircle ?Encerra arrasto da círculo?
RotatingLine "Rotacionando uma linha"
NotRotatingLine "Encerra rotação da linha"
RotatingTriangle "Rotacionando um triângulo"
NotRotatingTriangle "Encerra rotação do triângulo"
RotatingRect "Rotacionando um retângulo"
NotRotatingRect "Encerra rotação do retângulo"

Input Field CmdInput (NullEvent, MouseDown, MouseUp, MouseClick, PickMenu, EraseMenu, RotateMenu, LineMenu, TriangleMenu, RectMenu, CircleMenu)

NullEvent ?Evento nulo?
MouseDown ?Botão do  mouse está sendo pressionado?
MouseUp ?Botão do mouse está liberado?
MouseClick ?Botão do mouse foi pressionado e imediatamente liberado?
PickMenu ?Ferramenta ?pick? foi selecionada?
EraseMenu ?Ferramenta ?erase? foi selecionada?
RotateMenu "Ferramenta 'rotate' foi selecionada"
LineMenu ?Ferramenta ?line? foi selecionada?
TriangleMenu ?Ferrameta ?triangle? foi selecionada?
RectMenu ?Ferramenta ?rect? foi selecionada?
CircleMenu ?Ferramenta ?circle? foi selecionada?

Query Field MousePosition (NullEvent, MouseOnLine, MouseOnTriangle, MouseOnRect, MouseOnCircle, MouseOnLineCtrlPt, MouseOnTriangleCtrlPt, MouseOnRectCtrlPt, MouseOnCircleCtrlPt)

NullEvent ?Evento nulo?
MouseOnLine ?Cursor do mouse posicionado sobre uma linha?
MouseOnTriangle ?Cursor do mouse posicionado sobre um triângulo?
MouseOnRect ?Cursor do mouse posicionado sobre um retângulo?
MouseOnCircle ?Cursor do mouse posicionado sobre um círculo?
MouseOnLineCtrlPt ?Cursor do mouse posicionado sobre um ponto de controle de uma linha?
MouseOnTriangleCtrlPt ?Cursor do mouse sobre um ponto de controle de um triângulo?
MouseOnRectCtrlPt ?Cursor do mouse sobre um ponto de controle de um retângulo?
MouseOnCircle ?Cursor do mouse sobre um ponto de controle de um círculo?

Field Action (DrawLine, DrawTriangle, DrawRect, DrawCircle, SaveMouseInput, DelLine, DelTriangle, DelRect, DelCircle, SelLine, SelTriangle, SelRect, SelCircle, DeSelAll, SavePt1, SavePt2, SavePt3, ResetAllPts, ShowCtrlPts, ShowRotCtrlPts, HideCtrlPts, ChangeLineWidth, ChangeTriangleWidth, ChangeRectWidth, ChangeCircleWidth, ChangeLineStyle, ChangeTriangleStyle, ChangeRectStyle, ChangeCircleStyle, ChangeLineColor, ChangeTriangleColor, ChangeRectColor, ChangeCircleColor)

DrawLine: ?Desenha uma linha desde o ponto salvo até o ponto atual, utilizando as propriedades definidas?
DrawTriangle ?Desenha uma linha entre P1-P2, P2-P3, P3-P4, utilizando as propriedades definidas?
DrawRect ?Desenha um retângulo do ponto salvo ao ponto atual, utilizando as propriedades definidas?
DrawCircle ?Desenha um círculo na caixa envoltória definida pelo ponto salvo ao ponto atual (definido com coordenadas XY iguais à distância da coordenada X do cursor do mouse ao ponto salvo), utilizando as propriedades definidas?
SaveMouseInput ?Salva o ponto da localização do cursor do mouse?
DelLine ?Apaga uma linha?
DelTriangle ?Apaga um triângulo?
DelRect ?Apaga um retângulo?
DelRect ?Apaga uma elipse?
SelLine ?Seleciona uma linha?
SelTriangle ?Seleciona um triângulo?
SelRect ?Seleciona um retângulo?
SelCircle ?Seleciona um círculo?
DeSelAll ?Anula qualquer seleção?
SavePt1 ?Salva o ponto da localização do cursor do mouse como 1a. coordenada do triângulo e define Pt1Saved?
SavePt2 ?Salva o ponto da localização do cursor do mouse como 2a. coordenada do triângulo e define Pt2Saved?
SavePt3 ?Salva o ponto da localização do cursor do mouse como 3a. coordenada do triângulo e define Pt3Saved?
ResetAllPts ?Define NoPtSaved?
ShowCtrlPts ?Exibe pontos de controle de todas as primitivas (o CSO é desenhado com pontos de controle de outra cor)?
ShowRotCtrlPts "Exibe pontos de controle da mesma forma que ShowCtrlPts, mas com círculos ao invés de retângulos, como descrito no projeto de diálogo"
HideCtrlPts ?Oculta pontos de controle de todas as primitivas?
ChangeLineWidth ?Altera largura da linha selecionada?
ChangeTriangleWidth ?Altera largura das linhas do triângulo selecionado?
ChangeRectWidth ?Altera largura das linhas do retângulo selecionado?
ChangeCircleWidth ?Altera largura das linhas do círculo selecionado?
ChangeLineStyle ?Altera o estilo da linha selecionada?
ChangeTriangleStyle ?Altera o estilo das linhas do triângulo selecionado?
ChangeRectStyle ?Altera o estilo das linhas do retângulo selecionado?
ChangeCircleStyle ?Altera o estilo das linhas do círculo selecionado?
ChangeLineColor ?Altera a cor da linha selecionada?
ChangeTriangleColor ?Altera a cor das linhas do triângulo selecionado?
ChangeRectColor ?Altera a cor das linhas do retângulo selecionado?
ChangeCircleColor ?Altera a cor das linhas do círculo selecionada?

State Field SavedPoints (NoPtSaved, Pt1Saved, Pt2Saved, Pt3Saved)

NoPtSave ?Nenhuma coordenada do triângulo foi definida?
Pt1Saved ?1a. coordenada do triângulo foi definida?
Pt2Saved ?2a. coordenada do triângulo foi definida?
Pt3Saved ?3a. coordeanda do triângulo foi definida?

  • RubberLine, NullEvent > RubberLine
  • RubberTrianglePt1, NullEvent > RubberTrianglePt1
  • RubberTrianglePt2, NullEvent > RubberTrianglePt2
  • RubberTrianglePt3, NullEvent > RubberTrianglePt3
  • RubberRect, NullEvent > RubberRect
  • RubberCircle, NullEvent > RubberCircle
  • RubberLine, MouseClick | MouseUp > NotDraggingLine, DrawLine
  • RubberTrianglePt1, MouseClick | MouseUp > NotDraggingPt1
  • RubberTrianglePt2, MouseClick | MouseUp > NotDraggingPt2
  • RubberTrianglePt3, MouseClick | MouseUp > NotDraggingPt3, DrawTriangle, ResetAllPts
  • RubberRect, MouseClick | MouseUp > NotDraggingRect, DrawRect
  • RubberCircle, MouseClick | MouseUp > NotDraggingCircle, DrawCircle
  • EraseCmd, PickMenu > PickCmd, ShowCtrlPts
  • EraseCmd, RotateMenu > RotateCmd, ShowRotCtrlPts
  • EraseCmd, LineMenu > LineCmd, HideCtrlPts, DeSelAll
  • EraseCmd, TriangleMenu > TriangleCmd, HideCtrlPts, DeSelAll
  • EraseCmd, RectMenu > RectCmd, HideCtrlPts, DeSelAll
  • EraseCmd, CircleMenu > CircleCmd, HideCtrlPts, DeSelAll
  • EraseCmd, MouseDown, MouseOnLine > DelLine
  • EraseCmd, MouseDown, MouseOnTriangle > DelTriangle
  • EraseCmd, MouseDown, MouseOnRect > DelRect
  • EraseCmd, MouseDown, MouseOnCircle > DelCircle
  • EraseCmd, MouseDown, MouseOnLineCtrlPt > DelLine
  • EraseCmd, MouseDown, MouseOnTriangleCtrlPt > DelTriangle
  • EraseCmd, MouseDown, MouseOnRectCtrlPt > DelRect
  • EraseCmd, MouseDown, MouseOnCircleCtrlPt > DelCircle
  • RotateCmd, PickMenu > PickCmd, ShowCtrlPts
  • RotateCmd, EraseMenu > EraseCmd, DeSelAll, ShowCtrlPts
  • RotateCmd, LineMenu > LineCmd, HideCtrlPts, DeSelAll
  • RotateCmd, TriangleMenu > TriangleCmd, HideCtrlPts, DeSelAll
  • RotateCmd, RectMenu > RectCmd, HideCtrlPts, DeSelAll
  • RotateCmd, CircleMenu > CircleCmd, HideCtrlPts, DeSelAll
  • RotateCmd, MouseDown, MouseOnLineCtrlPt > RotatingLine
  • RotateCmd, MouseDown, MouseOnTriangleCtrlPt > RotatingTriangle
  • RotateCmd, MouseDown, MouseOnRectCtrlPt > RotatingRect
  • RotateCmd, MouseUp, RotatingLine > NotRotatingLine, SelLine
  • RotateCmd, MouseUp, RotatingTriangle > NotRotatingTriangle, SelTriangle
  • RotateCmd, MouseUp, RotatingRect > NotRotatingRect, SelRect
  • LineCmd, PickMenu > PickCmd, ShowCtrlPts
  • LineCmd, EraseMenu > EraseCmd, ShowCtrlPts
  • LineCmd, RotateMenu > RotateCmd, ShowRotCtrlPts
  • LineCmd, TriangleMenu > TriangleCmd
  • LineCmd, RectMenu > RectCmd
  • LineCmd, CircleMenu > CircleCmd
  • LineCmd, MouseClick > RubberLine, SaveMousePoint
  • TriangleCmd, PickMenu > PickCmd, ShowCtrlPts
  • TriangleCmd, EraseMenu > EraseCmd, ShowCtrlPts
  • TriangleCmd, RotateMenu > RotateCmd, ShowRotCtrlPts
  • TriangleCmd, LineMenu > LineCmd
  • TriangleCmd, RectMenu > RectCmd
  • TriangleCmd, CircleMenu > CircleCmd
  • TriangleCmd, MouseClick, NoPtSaved > SavePt1, RubberTrianglePt1
  • TriangleCmd, MouseClick, Pt1Saved > SavePt2, RubberTrianglePt2
  • TriangleCmd, MouseClick, Pt2Saved > SavePt3, RubberTrianglePt3
  • RectCmd, PickMenu > PickCmd, ShowCtrlPts
  • RectCmd, EraseMenu > EraseCmd, ShowCtrlPts
  • RectCmd, RotateMenu > RotateCmd, ShowRotCtrlPts
  • RectCmd, LineMenu > LineCmd
  • RectCmd, TriangleMenu > TriangleCmd
  • RectCmd, CircleMenu > CircleCmd
  • RectCmd, MouseClick > RubberRect, SaveMousePoint
  • CircleCmd, PickMenu > PickCmd, ShowCtrlPts
  • CircleCmd, EraseMenu > EraseCmd, ShowCtrlPts
  • CircleCmd, RotateMenu > RotateCmd, ShowRotCtrlPts
  • CircleCmd, LineMenu > LineCmd
  • CircleCmd, TriangleMenu > TriangleCmd
  • CircleCmd, RectMenu > RectCmd
  • CircleCmd, MouseClick > RubberCircle, SaveMousePoint
Input Field WidthInput (VThinMenu, ThinMenu, MediumMenu, ThickMenu, VThickMenu)

VThinMenu ?Largura ?VThin? foi selecionada?
ThinMenu ?Largura ?Thin? foi selecionada?
MediumMenu ?Largura ?Medium? foi selecionada?
ThickMenu ?Largura ?Thick? foi selecionada?
VThickMenu ?Largura ?VThick? foi selecionada?

Field WidthCmd (VThinCmd, ThinCmd, MediumCmd, ThickCmd, VThickCmd)

VThinCmd ?Ferramenta ?VThin? ativada. Modifica menu e ícone da barra de ferramentas. Altera propriedade do CSO?
ThinCmd ?Ferramenta ?Thin? ativada. Modifica menu e ícone da barra de ferramentas. Altera propriedade do CSO?
MediumCmd ?Ferramenta ?Medium? ativada. Modifica menu e ícone da barra de ferramentas. Altera propriedade do CSO?
ThickCmd ?Ferramenta ?Thickn? ativada. Modifica menu e ícone da barra de ferramentas. Altera propriedade do CSO?
VThickCmd ?Ferramenta ?VThick? ativada. Modifica menu e ícone da barra de ferramentas. Altera propriedade do CSO?

  • VThinCmd, ThinMenu > ThinCmd
  • VThinCmd, MediumMenu > MediumCmd
  • VThinCmd, ThickMenu > ThickCmd
  • VThinCmd, VThickMenu > VThickCmd
  • (Repete com Thin, Medium, Thick, VThick)
  • VThinCmd, ThinMenu, LineSel > ChangeLineWidth, DrawLine
  • VThinCmd, ThinMenu, TriangleSel > ChangeTriangleWidth, DrawTriangl
  • VThinCmd, ThinMenu, RectSel > ChangeRectWidth, DrawRect
  • VThinCmd, ThinMenu, CircleSel > ChangeCircleWidth, DrawCircle
  • (Repete com Thin, Medium, Thick, VTick)
Input Field StyleInput (SolidMenu, DashMenu, DotMenu)

SolidMenu ?Estilo ?Solid? foi selecionado?
DashMenu ?Estilo ?Dash? foi selecionado?
DotMenu ?Estilo ?Dot? foi selecionado?

Field StyleCmd (SolidCmd, DashCmd, DotCmd)

SolidCmd ?Ferramenta ?Solid? ativada. Modifica menu e ícone da barra de ferramentas. Altera propriedade do CSO?
DashCmd ?Ferramenta ?Dash? ativada. Modifica menu e ícone da barra de ferramentas. Altera propriedade do CSO?
DotCmd ?Ferramenta ?Dot? ativada. Modifica menu e ícone da barra de ferramentas. Altera propriedade do CSO?

  • SolidCmd, DashMenu > DashCmd
  • SolidCmd, DotMenu > DotCmd
  • (Repete com DashCmd e DotCmd)
  • SolidCmd, DashMenu, LineSel > ChangeLineStyle, DrawLine
  • SolidCmd, DashMenu, TriangleSel > ChangeTriangleStyle, DrawTriangle
  • SolidCmd, DashMenu, RectSel > ChangeRectStyle, DrawRect
  • SolidCmd, DashMenu, CircleSel > ChangeCircleStyle, DrawRect
  • (Repete com DashCmd e DotCmd)
Input Field ColorInput (BlackMenu, BlueMenu, GreenMenu, CyanMenu, RedMenu, MagentaMenu, YellowMenu, WhiteMenu)

Field ColorCmd (BlackCmd, BlueCmd, GreenCmd, CyanCmd, RedCmd, MagentaCmd, YellowCmd, WhiteCmd)

  • BlackCmd, BlueMenu > BlueCmd
  • BlackCmd, GreenMenu > GreenCmd
  • BlackCmd, CyanMenu > CyanCmd
  • BlackCmd, RedMenu > RedCmd
  • BlackCmd, MagentaMenu > MagentaCmd
  • BlackCmd, YellowMenu > YellowCmd
  • BlackCmd, WhiteMenu > WhiteCmd
  • (Repete com BlueCmd, GreenCmd, CyanCmd, RedCmd, MagentaCmd, YellowCmd, WhiteCmd)
  • BlackCmd, BlueMenu, LineSel > ChangeLineColor, DrawLine
  • BlackCmd, BlueMenu, TriangleSel > ChangeTriangleColor, DrawTriangle
  • BlackCmd, BlueMenu, RectSel > ChangeRectColor, DrawRect
  • BlackCmd, BlueMenu, CircleSel > ChangeCircleColor, DrawCircle
  • (Repete com todos os outros comandos de ColorCmd)

Especificações das Tarefas de Interação

6a Lista de Exercícios

Jorge Kawamura

Paulo G. Seifer Especificar com uso de PPS duas tarefas de interação de um sistema gráfico interativo que você conhece

Especificar com uso de PPS duas tarefas de interação de um sistema gráfico interativo que você conhece.

As tarefas que serão analisadas serão o inserção de uma circunferência na tela e remoção de um objeto desenhado.

  1. Espaço de Estado
  • CampoElemento (sem_comando, comando_linha, comando_de_seleção, seleção_de_menu );
  • CampoPosiçãoInical (sem_posição, marca_ponto_de_origem, marca_novo_ponto);
  • CampoArrastar(linha_elástica, circunferência_elástica, arrastar_objetos, arrastar_objetos_selecionados );
  • CampoPosiçãoFinal (sem_posição, marca_ponto_de_circunferêncainha, marca_novo_ponto_circunferência);

 

  1. Conjunto parcial de regras
  • Menu – circunferência, ativa comando circunferência, obter pontos através de cliques
  • Comando circunferência, clique marca origem, marcado centro circunferência é elástica, segundo clique marca o "raio", pontos são guardados em uma lista
  • Circunferência é elástico, a posição do cursor é lido
  • Segundo da circunferência clique o ponto é fixo e é armazenado na lista.
  • Menu – delete, clique no objeto desenhado, identificado o objeto na pilha
  • Apartar a tecla del, objeto é excluído da tela, objeto é excluído na pilha.

 

 

 

Especificações das Tarefas de Interação

IA369J

IA369J                                                                                    

6a Lista de Exercícios            

Luiz Fernando Stein Wetzel

 

  1. Especificar com uso do PPS as tarefas de interação so seu editor gráfico.

 

State Space

Field Type

Field Name

Conditions

Field

DragLine

NoDragLine,

DragLinePt1, DragLinePt2, DragLineAll

Field

DragTriangle

NoDragTriangle,

DragTrianglePt1, DragTrianglePt2, DragTrianglePt3,

DragTriangleAll

Field

DragRect

NoDragRect,

DragRectTop,

DragRectTopRight,

DragRectRight,

DragRectBottomRight,

DragRectBottom,

DragRectBottomLeft,

DragRectLeft,

DragRectTopLeft,

DragRectAll

Field

DragCircle

NoDragCircle,

DragCircleRadius,

DragCircleAll

Input Field

MouseInput

NoMouseEvt,

LBMouseDown, LBMouseUp,

MouseMove

Input Field

Color

Black, Red, Green, Blue, Yellow, Magenta, Cyan

Input Field

Draw

Line, Triangle, Rectangle, Circle

Field

MousePos

NoPicture, OnLine, OnLinePt1, OnLinePt2, OnTriangle, OnTrianglePt1, OnTrianglePt2, OnTrianglePt3, OnRect, OnRectTop,

OnRectTopRight,

OnRectRight,

OnRectBottomRight,

OnRectBottom,

OnRectBottomLeft,

OnRectLeft,

OnRectTopLeft, OnCircle, OnCircleRadius

Field

Selection

NoSel, LineSel, TriangleSel, RectSel, CircleSel

 

 

Rule Set

NoDragLine, OnLine, LBMouseDown

DragLineAll

NoDragLine, OnLinePt1, LBMouseDown

DragLinePt1

NoDragLine, OnLinePt2, LBMouseDown

DragLinePt2

DragLineAll, LBMouseUp

NoDragLine

DragLinePt1, LBMouseUp

NoDragLine

DragLinePt2, LBMouseUp

NoDragLine

NoDragTriangle, OnTriangle, LBMouseDown

DragTriangleAll

NoDragTriangle, OnTrianglePt1, LBMouseDown

DragTrianglePt1

NoDragTriangle, OnTrianglePt2, LBMouseDown

DragTrianglePt2

NoDragTriangle, OnTrianglePt3, LBMouseDown

DragTrianglePt3

DragTriangleAll, LBMouseUp

NoDragTriangle

DragTrianglePt1, LBMouseUp

NoDragTriangle

DragTrianglePt2, LBMouseUp

NoDragTriangle

DragTrianglePt3, LBMouseUp

NoDragTriangle

NoDragRect, OnRect, LBMouseDown

DragRectAll

NoDragRect, OnRectTop, LBMouseDown

DragRectTop

NoDragRect, OnRectTopRight, LBMouseDown

DragRectTopRight

NoDragRect, OnRectRight, LBMouseDown

DragRectRight

NoDragRect, OnRectBottomRight, LBMouseDown

DragRectBottomRight

NoDragRect, OnRectBottom, LBMouseDown

DragRectBottom

NoDragRect, OnRectBottomLeft, LBMouseDown

DragRectBottomLeft

NoDragRect, OnRectLeft, LBMouseDown

DragRectLeft

NoDragRect, OnRectTopLeft, LBMouseDown

DragRectTopLeft

DragRectAll, LBMouseUp

NoDragRect

DragRectTop, LBMouseUp

NoDragRect

DragRectTopRight, LBMouseUp

NoDragRect

DragRectRight, LBMouseUp

NoDragRect

DragRectBottomRight, LBMouseUp

NoDragRect

DragRectBottom, LBMouseUp

NoDragRect

DragRectBottomLeft, LBMouseUp

NoDragRect

DragRectLeft, LBMouseUp

NoDragRect

DragRectTopLeft, LBMouseUp

NoDragRect

NoDragCircle, OnCircle, LBMouseDown

DragCircleAll

NoDragCircle, OnCircleRadius, LBMouseDown

DragCircleRadius

DragCircleAll, LBMouseUp

NoDragCircle

DragCircleRadius, LBMouseUp

NoDragCircle