# Autor: Geraldo Clézio Oliveira Júnior #Email: geraldoclezio@yahoo.com.br #Data:11 de Agosto de 2005 # Descrição: cria um objeto através de uma caixa de dialogo e permite excluir um objeto selecionado require 'fox12' require 'fox12/responder' require 'fox12/colors' begin require 'fox12/glshapes' #require 'opengl' rescue LoadError require 'fox12/missingdep' MSG = <> ",@dialogoCor.acceptButton() if $viewer.selection == nil $viewer.setBackgroundColor(RGBconverteFXVec4f(@dialogoCor.getRGBA())) #print"\nteste>> ",@dialogoCor.didAccept() end } } ajuda = FXButton.new(toolbar, nil,@ajuda,nil,0, BUTTON_TOOLBAR| FRAME_THICK|FRAME_RAISED|LAYOUT_TOP|LAYOUT_LEFT) FXHorizontalSeparator.new(self, LAYOUT_SIDE_TOP|SEPARATOR_GROOVE|LAYOUT_FILL_X); # Contents frame = FXVerticalFrame.new(self, LAYOUT_SIDE_TOP|LAYOUT_FILL_X|LAYOUT_FILL_Y, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) # Nice sunken box around GL viewer box = FXVerticalFrame.new(frame, FRAME_SUNKEN|FRAME_THICK|LAYOUT_FILL_X|LAYOUT_FILL_Y, 0, 0, 0, 0, 0, 0, 0) #local dos chek buttons frame2 = FXVerticalFrame.new(frame, LAYOUT_SIDE_TOP|LAYOUT_FILL_X|LAYOUT_FILL_Y, 0, 0, 0, 0, 0,0, 0,-500, 0, 0) # area da janela MDI Client @mdiclient = FXMDIClient.new(box, LAYOUT_FILL_X|LAYOUT_FILL_Y) # Make MDI Window Menu @mdimenu = FXMDIMenu.new(self, @mdiclient) # Make an MDI Child mdichild = FXMDIChild.new(@mdiclient, "OpenGl", @mdiicon, @mdimenu, MDI_NORMAL, 0, 0, 400, 250) @glvisual = FXGLVisual.new(getApp(), VISUAL_DOUBLEBUFFER) #inreracao com os valores de criacao Make it active @mdiclient.setActiveChild(mdichild) # Drawing gl canvas $viewer = FXGLViewer.new(mdichild, @glvisual, self, ID_GLVIEWER, LAYOUT_FILL_X|LAYOUT_FILL_Y|LAYOUT_TOP|LAYOUT_LEFT) # Make a scene! @scene = FXGLGroup.new $gp2 = FXGLGroup.new @scene.append($gp2) # Add scene to GL viewer $viewer.scene = @scene rendermenu = FXMenuPane.new(self) FXMenuTitle.new(menubar, "Visualização", nil, rendermenu) FXMenuCommand.new(rendermenu, "Pontos", nil, @mdiclient, FXGLShape::ID_STYLE_POINTS, MENU_AUTOGRAY) FXMenuCommand.new(rendermenu, "Armação", nil, @mdiclient, FXGLShape::ID_STYLE_WIREFRAME, MENU_AUTOGRAY) FXMenuCommand.new(rendermenu, "Superfície sólida", nil, @mdiclient, FXGLShape::ID_STYLE_SURFACE, MENU_AUTOGRAY) ajuda =FXMenuPane.new(self) FXMenuTitle.new(menubar, "&Ajuda", nil, ajuda) FXMenuCommand.new(ajuda , "Ajuda",@ajuda) FXMenuCommand.new(ajuda, "Sobre",nil) #dialogocubo @dialogocubo = DialogoCubo.new(self) @dialogocone = DialogoCone.new(self) @dialogocilindro = DialogoCilindro.new(self) @dialogoesfera = DialogoEsfera.new(self) @dialogoSetcubo = DialogoSetCubo.new(self) @dialogoSetcone = DialogoSetCone.new(self) @dialogoSetcilindro = DialogoSetCilindro.new(self) @dialogoSetesfera = DialogoSetEsfera.new(self) @dialogoCor = FXColorDialog.new(self, "Opções de Cores",1, DECOR_TITLE|DECOR_BORDER) @texto = FXLabel.new(frame2, "",nil,LABEL_NORMAL,0,0,0,0,0,0,10,0) #CURSOR_MOVE SEL_MOUSEWHEEL SEL_MOTION $viewer.connect(SEL_MOUSEWHEEL) do print"\n teste ",$viewer.selection#$cursor.isColor() @texto.text = "ID:" + String($viewer.selection.getTipText()) end end#final de initialize # Crie e inicialize def create super show(PLACEMENT_SCREEN) end end#final de clase if __FILE__==$0 application = FXApp.new("GLTest", "FoxTest") application.disableThreads $principal = GLTestInicio.new(application) application.create application.run end