Package com.nexirius.multimail.dataviewer

Source Code of com.nexirius.multimail.dataviewer.SeparatorChooserViewer$MySeparatorListener

//{HEADER
/**
* This class is part of jnex 'Nexirius Application Framework for Java'
* Source File Date:   Wed Feb 11 22:45:40 GMT+01:00 2004
* @version:           2.8 (Wed Feb 18 07:27:51 GMT+01:00 2004)
* Class name:         com.nexirius.com.nexirius.multimail.dataviewer.MailViewer
*
* Copyright (C) Nexirius GmbH, CH-4450 Sissach, Switzerland (www.nexirius.ch)
*
* <p>This library is free software; you can redistribute it and/or<br>
* modify it under the terms of the GNU Lesser General Public<br>
* License as published by the Free Software Foundation; either<br>
* version 2.1 of the License, or (at your option) any later version.</p>
*
* <p>This library is distributed in the hope that it will be useful,<br>
* but WITHOUT ANY WARRANTY; without even the implied warranty of<br>
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU<br>
* Lesser General Public License for more details.</p>
*
* <p>You should have received a copy of the GNU Lesser General Public<br>
* License along with this library; if not, write to the Free Software<br>
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA</p>
* </blockquote>
*
* <p>
* Nexirius GmbH, hereby disclaims all copyright interest in<br>
* the library jnex' 'Nexirius Application Framework for Java' written<br>
* by Marcel Baumann.</p>
*/
//}HEADER
package com.nexirius.multimail.dataviewer;

import java.awt.*;

import javax.swing.*;
import javax.swing.border.EmptyBorder;

import com.nexirius.framework.dataeditor.TextAreaEditorCreator;
import com.nexirius.framework.datamodel.DataModel;
import com.nexirius.framework.datamodel.DataModelAdaptor;
import com.nexirius.framework.datamodel.DataModelEvent;
import com.nexirius.framework.datamodel.TextModel;
import com.nexirius.framework.datamodel.Viewable;
import com.nexirius.framework.dataviewer.*;
import com.nexirius.framework.swing.CFJLabel;
import com.nexirius.framework.swing.SwingViewerCreator;
import com.nexirius.multimail.datamodel.MainModel;

public class SeparatorChooserViewer extends StandardViewer {
  public static final String _NEXIRIUS_VERSION = "2.8";
  MainModel mainModel;
  DataModel separator;
  TextModel text;
 
  public SeparatorChooserViewer()
  {
  }
 
  public JComponent createJComponent(ViewerFactory factory) {
    setLayout(new BorderLayout());
    setBorder(new EmptyBorder(new Insets(4, 4, 4, 4)));
   
    try {
      add(new CFJLabel(factory.getClientResource(), "separator.text"), BorderLayout.NORTH);

      JComponent center = factory.createViewer(new RadioBoxViewerCreator(), separator).getJComponent();
 
      add(center, BorderLayout.CENTER);

      text = new TextModel(mainModel.getSeparatorHelpText(), "text");
      JComponent south = factory.createDefaultEditor(text).getJComponent();

      south.setPreferredSize(new Dimension(500, 100));
      south.setSize(new Dimension(500, 100));
     
      add(south, BorderLayout.SOUTH);

      separator.addSoftDataModelListener(new MySeparatorListener());
    } catch (Exception ex)
    {
      ex.printStackTrace();
    }

    return this;
  }
 
  class MySeparatorListener extends DataModelAdaptor
  {
    public void dataModelChangeValue(DataModelEvent ev)
    {
      text.setText(mainModel.getSeparatorHelpText());     
    }
  }

  public boolean isEditor() {
    return true;
  }

  public void setDataModel(DataModel separator) {
    this.separator = separator;
    this.mainModel = (MainModel)separator.getParentDataModel();
  }

  public DataModel getDataModel() {
    return separator;
  }
}

 
TOP

Related Classes of com.nexirius.multimail.dataviewer.SeparatorChooserViewer$MySeparatorListener

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.