My Project
|
#include <grid.h>
Señales | |
void | cellClicked (QPoint pos) |
void | canUndo (bool can) |
void | canRedo (bool can) |
Métodos públicos | |
GridWidget (int rowCount=100, int columnCount=100, QWidget *parent=0) | |
GridWidget (QWidget *parent) | |
void | setGridSize (int rowCount, int columnCount) |
Ajusta el numero de columnas y fileas de la cuadricula. Más... | |
void | switchOn (int x, int y, const QColor &color) |
Guarda el color y la posicion dados en el vector que representa las celdas pintadas en la cuadricula. Más... | |
QColor | getCellColor (int x, int y) |
Devuelve el color de la celda en la posicion (x,y) Más... | |
void | switchOff (int x, int y) |
Remueve la posicion dada del vector que representa las celdas pintadas en la cuadricula. Más... | |
int | getGridColumns () |
Devuelve el numero de columnas en la cuadricula. Más... | |
int | getGridRows () |
Devuelve el numero de filas en la cuadricula. Más... | |
void | clear () |
Limpa la cuadricula y la pone en su estado inicial. | |
void | setCellSize (int size) |
Ajusta el tamano de las celdas de la cuadricula. Más... | |
void | setTool (QString tool) |
Ajusta la herramienta. | |
void | setFront (QString front) |
Ajusta el color de la brocha. Más... | |
void | setBack (QString back) |
Ajusta el color del fondo. Más... | |
void | setToolSize (int size) |
Ajusta el tamano de la herramienta. Más... | |
void | identifyTool (QString tool, int x, int y) |
Esta funcion es llamada en cada evento de el mouse presionado dentro de la cuadricula. Identifica la forma en que el grid va a ser pintado llamando la funcion del tool recibido en los parametros (dot, rowfill, column fill, diagonal, square, triangles and circles). Más... | |
void | Dot (int x, int y, QColor colorSelected) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta la celda con el color del tool. Más... | |
void | RowMajorFill (int x, int y, QColor colorClicked, QColor toolColor) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta (desde ese punto hacia la izq o derecha) la fila mas larga del mismo color de la celda que fue marcada con el color de la herramienta. Más... | |
void | ColMajorFill (int x, int y, QColor colorClicked, QColor toolColor) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta (desde ese punto hacia la arriba o abajo) la columna mas larga del mismo color de la celda que fue marcada con el color de la herramienta. Más... | |
void | DiagonalLeft (int x, int y, QColor colorClicked, QColor toolColor) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta (desde ese punto diagonal) la diagonal izquierda mas larga del mismo color de la celda que fue marcada con el color de la herramienta. Más... | |
void | DiagonalRight (int x, int y, QColor colorClicked, QColor toolColor) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta (desde ese punto diagonal) la diagonal derecha mas larga del mismo color de la celda que fue marcada con el color de la herramienta. Más... | |
void | square (int x, int y, QColor toolColor, int toolSize) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta un cuadrado de el tamano y color de la herramienta. Más... | |
void | triangle (int x, int y, QColor toolColor, int toolSize) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta un triangulo de el tamano y color de la herramienta. Más... | |
void | circle (int x, int y, QColor toolColor, int toolSize) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta un circulo de el tamano y color de la herramienta. Más... | |
void | undo () |
Cuando el boton es apretado el estado acutual es empujado en el vector(newStates) de redo y el ultimo estado en el vector(oldStates) undo es pintado en la cuadricula. | |
void | redo () |
Métodos protegidos | |
void | drawGrid (QPaintDevice *device) |
Funcion que primero ajusta el tamano del widget de la cuadricula, luego pinta las celdas con el color seleccionado en el background y finalmente pinta las lineas para formar el grid. Más... | |
virtual void | paintEvent (QPaintEvent *) |
Esta funcion es invocada automaticmente cada ves que el widget o el padre recibe una senal de repintar. Más... | |
virtual void | mousePressEvent (QMouseEvent *) |
Cuando el raton (mouse) is marcada en una celda de la cuadricula obtiene las coordenadas x, y del raton y los usa para pintar la herramienta en ese lugar. | |
Atributos privados | |
int | mCellSize |
int | mRowCount |
int | mColumnCount |
QPixmap | mGridPix |
QHash< int, QColor > | mColors |
QString | Tool |
int | ToolSize |
QColor | frontColor |
QColor | backColor |
QColor | background |
QVector< QHash< int, QColor > > | oldStates |
QVector< QHash< int, QColor > > | newStates |
GridWidget: Shows a GridView without scrolling. If you want to have Scroll option, use GridView instead. GridWidget also supports mouse selection, sends the signal cellClicked with the associated grid coordinates.
void GridWidget::circle | ( | int | x, |
int | y, | ||
QColor | toolColor, | ||
int | toolSize | ||
) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta un circulo de el tamano y color de la herramienta.
x | coordenada x de la celda en la cuadricula |
y | coordenada y de la celda en la cuadricula |
toolColor | color de las celdas pintadas por el tool |
toolSize | tamano de la herramienta a ser pintada |
void GridWidget::ColMajorFill | ( | int | x, |
int | y, | ||
QColor | colorClicked, | ||
QColor | toolColor | ||
) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta (desde ese punto hacia la arriba o abajo) la columna mas larga del mismo color de la celda que fue marcada con el color de la herramienta.
x | coordenada x de la celda en la cuadricula |
y | coordenada y de la celda en la cuadricula |
colorClicked | el color de la celda marcada |
toolColor | color de las celdas pintadas por el tool |
void GridWidget::DiagonalLeft | ( | int | x, |
int | y, | ||
QColor | colorClicked, | ||
QColor | toolColor | ||
) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta (desde ese punto diagonal) la diagonal izquierda mas larga del mismo color de la celda que fue marcada con el color de la herramienta.
x | coordenada x de la celda en la cuadricula |
y | coordenada y de la celda en la cuadricula |
colorClicked | el color de la celda marcada |
toolColor | color de las celdas pintadas por el tool |
void GridWidget::DiagonalRight | ( | int | x, |
int | y, | ||
QColor | colorClicked, | ||
QColor | toolColor | ||
) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta (desde ese punto diagonal) la diagonal derecha mas larga del mismo color de la celda que fue marcada con el color de la herramienta.
x | coordenada x de la celda en la cuadricula |
y | coordenada y de la celda en la cuadricula |
colorClicked | el color de la celda marcada |
toolColor | color de las celdas pintadas por el tool |
void GridWidget::Dot | ( | int | x, |
int | y, | ||
QColor | toolColor | ||
) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta la celda con el color del tool.
x | coordenada x de la celda en la cuadricula |
y | coordenada y de la celda en la cuadricula |
toolColor | color de las celdas pintadas por el tool |
|
protected |
Funcion que primero ajusta el tamano del widget de la cuadricula, luego pinta las celdas con el color seleccionado en el background y finalmente pinta las lineas para formar el grid.
device | el panel para pintar la cuadricula |
QColor GridWidget::getCellColor | ( | int | x, |
int | y | ||
) |
Devuelve el color de la celda en la posicion (x,y)
x | coordenada x de la celda en el cuadricula |
y | coordenada y de la celda en la cuadricula |
int GridWidget::getGridColumns | ( | ) |
Devuelve el numero de columnas en la cuadricula.
int GridWidget::getGridRows | ( | ) |
Devuelve el numero de filas en la cuadricula.
void GridWidget::identifyTool | ( | QString | tool, |
int | x, | ||
int | y | ||
) |
Esta funcion es llamada en cada evento de el mouse presionado dentro de la cuadricula. Identifica la forma en que el grid va a ser pintado llamando la funcion del tool recibido en los parametros (dot, rowfill, column fill, diagonal, square, triangles and circles).
tool | la herramienta a llamar por la funcion |
x | coordenada x de la celda en la cuadricula |
y | coordenada y de la celde en la cuadricula |
|
protectedvirtual |
Esta funcion es invocada automaticmente cada ves que el widget o el padre recibe una senal de repintar.
event | referencia a un evento recibido |
void GridWidget::redo | ( | ) |
Cuando el boton redo es marcado el estado actual es empujado en el vector(oldStates) undo y el ultimo estado en el vector redo(newStates) es pintaod en el grid.
void GridWidget::RowMajorFill | ( | int | x, |
int | y, | ||
QColor | colorClicked, | ||
QColor | toolColor | ||
) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta (desde ese punto hacia la izq o derecha) la fila mas larga del mismo color de la celda que fue marcada con el color de la herramienta.
x | coordenada x de la celda en la cuadricula |
y | coordenada y de la celda en la cuadricula |
colorClicked | el color de la celda marcada |
toolColor | color de las celdas pintadas por el tool |
void GridWidget::setBack | ( | QString | back | ) |
Ajusta el color del fondo.
back | color para el fondo |
void GridWidget::setCellSize | ( | int | size | ) |
Ajusta el tamano de las celdas de la cuadricula.
size | tamano de la celda |
void GridWidget::setFront | ( | QString | front | ) |
Ajusta el color de la brocha.
front | color de la brocha |
void GridWidget::setGridSize | ( | int | rowCount, |
int | columnCount | ||
) |
Ajusta el numero de columnas y fileas de la cuadricula.
rowCount | numero de filas |
columnCount | numero de columnas |
void GridWidget::setToolSize | ( | int | size | ) |
Ajusta el tamano de la herramienta.
size | tamano de la herramienta |
void GridWidget::square | ( | int | x, |
int | y, | ||
QColor | toolColor, | ||
int | toolSize | ||
) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta un cuadrado de el tamano y color de la herramienta.
x | coordenada x de la celda en la cuadricula |
y | coordenada y de la celda en la cuadricula |
toolColor | color de las celdas pintadas por el tool |
toolSize | tamano de la herramienta a ser pintada |
void GridWidget::switchOff | ( | int | x, |
int | y | ||
) |
Remueve la posicion dada del vector que representa las celdas pintadas en la cuadricula.
x | coordenada x de la celda en el cuadricula |
y | coordenada y de la celda en la cuadricula |
void GridWidget::switchOn | ( | int | x, |
int | y, | ||
const QColor & | color | ||
) |
Guarda el color y la posicion dados en el vector que representa las celdas pintadas en la cuadricula.
x | coordenada x de la celda en el cuadricula |
y | coordenada y de la celda en la cuadricula |
color | color to paint cell |
void GridWidget::triangle | ( | int | x, |
int | y, | ||
QColor | toolColor, | ||
int | toolSize | ||
) |
Recibe las coordenadas de la cuadricula donde el usuario marco y pinta un triangulo de el tamano y color de la herramienta.
x | coordenada x de la celda en la cuadricula |
y | coordenada y de la celda en la cuadricula |
toolColor | color de las celdas pintadas por el tool |
toolSize | tamano de la herramienta a ser pintada |
|
private |
background color of the cell / color del fondo de la celda
|
private |
cell size / tamano del la celda
|
private |
color of the front cell / color de la celda de frente
|
private |
cell size / tamano del la celda
|
private |
Hash of colors with the painted cells and their colors / Hash de colores con las celdas pintadas y sus colores
|
private |
column number / numero de columnas
|
private |
to paint the grid / para pintar la cuadricula
|
private |
row number / numero de filas
|
private |
vector to implement undo/redo
|
private |
vetor to implement undo/redo
|
private |
name of the tool selected / nombre de la herramienta seleccionada
|
private |
tool size / tamano del a herramienta