sexta-feira, 22 de agosto de 2008

Tirando a tag tbody do form do Struts 2

Olá pessoal, esse é um "Fast post" só pra não passar em branco, vamos direto ao assunto, quem nunca usou o Struts2 com o tema ajax, e quando se deparou com o form que ela gera, esta lá uma tabela ? "a sim Igor mas a tabela organiza melhor o form !", teoricamente sim, mas se eu quizer tirar a tabela, se eu quizer organizar o form de outra maneira que não seja a que o Struts 2 me oferece? Bem a resposta para essa pergunta é bem simples basta colocar no form onde deseja tirar a tabela a propriedade theme setando para ela o valor "css_xhtml" como no exemplo.

 < s:form action="%{acao}" theme="css_xhtml"> 


Bom pessoal é isso a t+.

sexta-feira, 15 de agosto de 2008

FCKeditor com Struts 2 utilizando o tema ajax

Bom pessoal depois de um bom tempo longe volto a escrever novamente. Bem fazendo uma aplicação web utilizando o struts 2, precisei utilizar o famoso FCKeditor para criação e edição de conteúdo, porém, como estava utilizando o struts 2 com o tema ajax, percebi que o FCKeditor apresentava um problema em relação ao envio do seu conteúdo, pois quando mandava enviar ele não enviava o conteúdo atual do FCKeditor, ai começou o problema, depois muitas horas rodando na NET achei algumas soluções, então resolvi fazer este post para direcionar especificamente para o struts 2, pode não a melhor solução mas com certeza irá funcionar :D, então vamos para a solução.

Após a configuração do FCKeditor que você poderá encontrar como fazer no site do FCKeditor , eis a resolução do problema:

basta colocar esse javascript entre as head do seu projeto:

function FCKeditor() {
var oEditor = FCKeditorAPI.GetInstance("Nome_da_Instancia_do_FCKeditor");
conteudoFCK= oEditor.GetXHTML();
document.getElementById("Nome_da_Instancia_do_FCKeditor").value = conteudoFCK;

}

e no form ficará da seguinte forma:

s:form action="%{NOME_DA_ACTION}" onsubmit="FCKeditor()"

Quando o FCKeditor é renderizado na página, ele gera um campo input hidden com o mesmo nome da instância do FCKeditor, e gera um iframe que será carregado o FCKeditor, o problema é que com o tema ajax ativado no struts 2, o FCK não consegue passar o valor atual dele para o parâmetro, então o javascript acima irá dar essa forcinha ao FCK :D.

Espero ter ajudado com este post.

quinta-feira, 24 de janeiro de 2008

Transformando escalas no Model

Olá pessoal,

Mais uma vez a pedidos estou fazendo este post, pois acho que essa deve ser uma dúvida de muitos, então vou mostrar uma técnica que aprendi no dia-a-dia. Bem esta é um técnica simples e rápida de se fazer é uma alternativa aos viewports utilizados nos layouts.

Bom vamos deixar de conversa fiada e vamos direto ao assunto, esta técnica consiste em um cálculo simples, onde deveremos achar um fator de escala, que será utlizado na ferramenta "scale", então vamos criar o ambiente, eu tenho uma planta na escala de 1:100, e preciso fazer uma planta de localização na escala de 1:500, pronto então eu preciso converter essa escala para que ela realmente fique na escala de 1:500, uma vez que irei desenhá-la na escala de 1:100.

exemplo antes de converter a escala.

Agora preciso converte a minha planta situação para a escala de 1:500, o cálculo ao qual me referi consiste em dividir a escala do desenho por a escala a ser transformada, ou seja, se meu desenho é de 1:100 e eu quero que minha planta situação fique em 1:500, basta eu dividir 100/500, pronto agora temos um fator, que é 0.2.

Com esse fator iremos utilizar o comando "Scale" no menu Modify, ou digitar "sc" via prompt, ao executar o comando Scale, ele pede para selecionar o objeto, então selecionamos o objeto que iremos aplicar o fator de escala, neste caso a planta situação, como não queremos aplicar o fator em outro objeto, confirmamos com o enter, o comando agora me pede um ponto de base, é o ponto que o objeto será transformado apartir dele, no caso do exemplo vou escolher o meio da rua. Depois de escolhido o ponto de base agora o comando me pede o fator que irei utilizar, é ai que vamos utlizar o quociente da nossa divisão, é so digitar 0.2 e confirmar.

exemplo depois de converter a escala.

Pronto conseguimos mudamos a escala de um desenho pelo model, e de maneira simples sem muita complicação.

Um grande abraço a todos.

terça-feira, 22 de janeiro de 2008

Adicionando nova barra no AutoCAD 2006

Olá pessoal, a pedidos elaborei esse tuto, como adicionar uma barra de ferramentas no AutoCAD 2006, uma tarefa simples, porém, para aqueles que vem de versões anteriores essa opção foi uma das que sofreu maiores mudanças, e por esse motivo muita gente que fazia essa tarefa corriqueira nas versões do 2005 para baixo, está quebrando um pouco a cabeça com essa nova versão.

Então pensando nesse pessoal, vamos colocar a mão na massa, :-)

  1. O primeiro passo é acessar a caixa de diálogo Custumize User Interface (CUI), podendo ser acessada pelo comando "cui" via prompt, ou no menu view/toolbars;
  2. Para adicionar uma barra já existente no AutoCAD vamos acessar a caixa de diálogo Custumize User Interface, na aba Custumize, na área "Customizations in All CUI Files", abrir a opção Workspaces", e clicar na opção AutoCAD Default;
  3. Ao clicar na opção AutoCAD Default, irá aparecer uma área ao lado com o nome "Workspaces Contents", onde haverá um botão "Custumize Workspace", clicando nesse botão na área "Customizations in All CUI Files" a opção toolbar será abilitada para marcar e desmarcar qual barra tem interesse em utilizar, após feito a escolha de qual barra será utilizada no AutoCAD, basta clicar no botão "aplicar";
  4. Para criar uma barra personalizada, basta clicar com o botão direito do mouse sobre a opção Toolbars na área "Customizations in All CUI Files" e ir na opção "new/Toolbar", irá aparecer uma barra nova, é só nomear;
  5. A barra nova está criada falta agora colocar os comandos nela, pronto, para isso iremos na área Command List, escolhemos uma categoria, e agora é só clicar no comando desejado, e arrastá-lo para a barra criada, após criada a barra é so clicar em "aplicar";
Bom pessoal, por enquanto é só isso, espero ter ajudado alguns com esse tuto, obrigado pela atenção de todos.

segunda-feira, 21 de janeiro de 2008

Forum FlexBrasil

Foi concluído a menos de uma semana, o forum FlexBrasil, que tem como principal objetivo, auxiliar tanto os principiantes na tecnologia Flex quanto os mais experiêntes, o forum FlexBrasil é uma boa alternativa pra quem esta iniciando na tecnologia, assim como as listas FlexDev e Flex-Brasil, o forum vem com a proposta de organizar melhor os conteúdos postado, para que assim facilite a busca por informações, desta maneira vocês podem conferir, acessando e se cadastrando no forum clicando aqui

sábado, 12 de janeiro de 2008

Atalhos via prompt no AutoCad

Bom,

Esse é meu primeiro post sobre AutoCad, e pra iniciar irei postar a maioria dos atalhos via prompt do AutoCad, conforme prometi aos meus aluno do curso de AutoCad, a lista é meio grande mas vale apena dar uma olhada.


3A, *3DARRAY

3F, *3DFACE

3P, *3DPOLY

A, *ARC

AA, *AREA

AL, *ALIGN

AP, *APPLOAD

AR, *ARRAY

AAD, *ASEADMIN

AEX, *ASEEXPORT

ALI, *ASELINKS

ASQ, *ASESQLED

ARO, *ASEROWS

ASE, *ASESELECT

AT, *DDATTDEF

-AT, *ATTDEF

ATE, *DDATTE

-ATE, *ATTEDIT

B, *BMAKE

-B, *BLOCK

BH, *BHATCH

BO, *BOUNDARY

-BO, *-BOUNDARY

BR, *BREAK

C, *CIRCLE

CH, *DDCHPROP

-CH, *CHANGE

CHA, *CHAMFER

COL, *DDCOLOR

CO, *COPY

D, *DDIM

DAL, *DIMALIGNED

DAN, *DIMANGULAR

DBA, *DIMBASELINE

DCE, *DIMCENTER

DCO, *DIMCONTINUE

DDI, *DIMDIAMETER

DED, *DIMEDIT

DI, *DIST

DIV, *DIVIDE

DLI, *DIMLINEAR

DO, *DONUT

DOR, *DIMORDINATE

DOV, *DIMOVERRIDE

DR, *DRAWORDER

DRA, *DIMRADIUS

DST, *DIMSTYLE

DT, *DTEXT

DV, *DVIEW

E, *ERASE

ED, *DDEDIT

EL, *ELLIPSE

EX, *EXTEND

EXIT, *QUIT

EXP, *EXPORT

EXT, *EXTRUDE

F, *FILLET

FI, *FILTER

G, *GROUP

-G, *GROUP

GR, *DDGRIPS

H, *BHATCH

-H, *HATCH

HE, *HATCHEDIT

HI, *HIDE

I, *DDINSERT

-I, *INSERT

IAD, *IMAGEADJUST

IAT, *IMAGEATTACH

ICL, *IMAGECLIP

IM, *IMAGE

-IM, *-IMAGE

IMP, *IMPORT

IN, *INTERSECT

INF, *INTERFERE

IO, *INSERTOBJ

L, *LINE

LA, *LAYER

-LA, *-LAYER

LE, *LEADER

LEN, *LENGTHEN

LI, *LIST

LS, *LIST

LT, *LINETYPE

-LT, *-LINETYPE

LTS, *LTSCALE

M, *MOVE

MA, *MATCHPROP

ME, *MEASURE

MI, *MIRROR

ML, *MLINE

MO, *DDMODIFY

MS, *MSPACE

MT, *MTEXT

MV, *MVIEW

O, *OFFSET

OS, *DDOSNAP

-OS, *-OSNAP

P, *PAN

-P, *-PAN

PA, *PASTESPEC

PE, *PEDIT

PL, *PLINE

PO, *POINT

POL, *POLYGON

PR, *PREFERENCES

PRE, *PREVIEW

PRINT, *PLOT

PS, *PSPACE

PU, *PURGE

R, *REDRAW

RA, *REDRAWALL

AV, *DSVIEWER

CP, *COPY

DIMALI, *DIMALIGNED

DIMANG, *DIMANGULAR

DIMBASE, *DIMBASELINE

DIMCONT, *DIMCONTINUE

DIMDIA, *DIMDIAMETER

DIMED, *DIMEDIT

DIMTED, *DIMTEDIT

DIMLIN, *DIMLINEAR

DIMORD, *DIMORDINATE

DIMRAD, *DIMRADIUS

DIMSTY, *DIMSTYLE

DIMOVER, *DIMOVERRIDE

LEAD, *LEADER

TM, *TILEMODE

F, *FILLET

FI, *FILTER

G, *GROUP

-G, *GROUP

GR, *DDGRIPS

H, *BHATCH

-H, *HATCH

HE, *HATCHEDIT

HI, *HIDE

I, *DDINSERT

-I, *INSERT

IAD, *IMAGEADJUST

IAT, *IMAGEATTACH

ICL, *IMAGECLIP

IM, *IMAGE

-IM, *-IMAGE

IMP, *IMPORT

IN, *INTERSECT

INF, *INTERFERE

IO, *INSERTOBJ

L, *LINE

LA, *LAYER

-LA, *-LAYER

LE, *LEADER

LEN, *LENGTHEN

LI, *LIST

LS, *LIST

LT, *LINETYPE

-LT, *-LINETYPE

LTS, *LTSCALE

M, *MOVE

MA, *MATCHPROP

ME, *MEASURE

MI, *MIRROR

ML, *MLINE

MO, *DDMODIFY

MS, *MSPACE

MT, *MTEXT

MV, *MVIEW

O, *OFFSET

OS, *DDOSNAP

-OS, *-OSNAP

P, *PAN

-P, *-PAN

PA, *PASTESPEC

PE, *PEDIT

PL, *PLINE

PO, *POINT

POL, *POLYGON

PR, *PREFERENCES

PRE, *PREVIEW

PRINT, *PLOT

PS, *PSPACE

PU, *PURGE

R, *REDRAW

RA, *REDRAWALL

RE, *REGEN

REA, *REGENALL

REC, *RECTANGLE

REG, *REGION

REN, *DDRENAME

-REN, *RENAME

REV, *REVOLVE

RM, *DDRMODES

RO, *ROTATE

RPR, *RPREF

RR, *RENDER

S, *STRETCH

SC, *SCALE

SCR, *SCRIPT

SE, *DDSELECT

SEC, *SECTION

SET, *SETVAR

SHA, *SHADE

SL, *SLICE

SN, *SNAP

SO, *SOLID

SP, *SPELL

SPL, *SPLINE

SPE, *SPLINEDIT

ST, *STYLE

SU, *SUBTRACT

T, *MTEXT

-T, *-MTEXT

TA, *TABLET

TH, *THICKNESS

TI, *TILEMODE

TO, *TOOLBAR

TOL, *TOLERANCE

TOR, *TORUS

TR, *TRIM

UC, *DDUCS

UCP, *DDUCSP

UN, *DDUNITS

-UN, *UNITS

UNI, *UNION

V, *DDVIEW

-V, *VIEW

VP, *DDVPOINT

-VP, *VPOINT

W, *WBLOCK

WE, *WEDGE

X, *EXPLODE

XA, *XATTACH

XB, *XBIND

-XB, *-XBIND

XC, *XCLIP

XL, *XLINE

XR, *XREF

-XR, *-XREF

Z, *ZOOM

Alternativa ao LCDS

Olá pessoal,

A Adobe lançou uma alternativa OpenSource (Licença LGPL v3), ao Live Cycle Data Service (LCDS), é o BlazeDS que é nada mais do que um programa responsável por fazer a comunicação da linguagem server-side Java com o
Adobe Flex, e da suporte tanto para o Remoting assim como ao Messaging.

Essa é uma notícia muito boa pra quem programa em Java e pretente fazer um integração com o Flex, ou já o fez, apesar de existir outras alternativas para tal tipo de integração, como o GraniteDS e o OpenAMF, porém, o BlazeDS promete muito, enquanto isso podemos baixar a versão beta no site da Adobe e da uma lida mais aprofundada sobre o assunto, o endereço é esse --> http://labs.adobe.com/technologies/blazeds/