Package net.datacrow.core.objects

Examples of net.datacrow.core.objects.Picture


            valueIdent -= (stepSize * 2);
            tagIdent -= (stepSize * 2);
            ident(valueIdent);           
           
        } else if (o instanceof Picture) {
            Picture picture = (Picture) o;
            String filename = utilities.getImageURL(picture);
            write(filename);
        } else if (o instanceof Date) {
            Date date = (Date) o;
            write(new SimpleDateFormat("yyyy-MM-dd").format(date));
View Full Code Here


        int[] fields = dco.getFieldIndices();

        int row = position == -1 ? addRow() : position;
        int field;
        int col;
        Picture picture;
        Object value;
        DcImageIcon old_image;
        Picture p;
        for (int i = 0; i < fields.length; i++) {
            field = fields[i];
            col = getColumnIndexForField(field);
            value = dco.getValue(fields[i]);
           
            if (view != null && view.getType() == View._TYPE_INSERT &&  value instanceof Picture) {
               
                // TODO: test this, worked with bytes..
               
                // keep images save
                picture = (Picture) value;
                old_image = (DcImageIcon) picture.getValue(Picture._D_IMAGE);;
               
                if (old_image != null) {
                    p = (Picture) DcModules.get(DcModules._PICTURE).getItem();
                    p.setValue(Picture._A_OBJECTID, picture.getValue(Picture._A_OBJECTID));
                    p.setValue(Picture._B_FIELD, picture.getValue(Picture._B_FIELD));
                    p.setValue(Picture._C_FILENAME, picture.getValue(Picture._C_FILENAME));
                    p.setValue(Picture._E_HEIGHT, picture.getValue(Picture._E_HEIGHT));
                    p.setValue(Picture._F_WIDTH, picture.getValue(Picture._F_WIDTH));
                    p.setValue(Picture._D_IMAGE, new DcImageIcon(old_image.getImage()));
                    picture = p;
                }
                model.setValueAt(picture, row, col);
            } else {
                model.setValueAt(value, row, col);   
View Full Code Here

     * Creates a new picture instance.
     * @see Picture
     */
    @Override
    public DcObject createItem() {
        return new Picture();
    }
View Full Code Here

            conn = DatabaseManager.getConnection();
            stmt = conn.createStatement();
       
            for (DcField field : dco.getFields()) {
                if (field.getValueType() == DcRepository.ValueTypes._PICTURE) {
                    Picture picture = (Picture) dco.getValue(field.getIndex());
                    ImageIcon image = picture != null ? (ImageIcon) picture.getValue(Picture._D_IMAGE) : null;
                    if (image != null) {
                        if (image.getIconHeight() == 0 || image.getIconWidth() == 0) {
                            logger.warn("Image " + dco.getID() + "_" + field.getDatabaseFieldName() + ".jpg" + " is invalid and will not be saved");
                        } else {
                            picture.setValue(Picture._A_OBJECTID, dco.getID());
                            picture.setValue(Picture._B_FIELD, field.getDatabaseFieldName());
                            picture.setValue(Picture._C_FILENAME, dco.getID() + "_" + field.getDatabaseFieldName() + ".jpg");
                            picture.setValue(Picture._E_HEIGHT, image.getIconHeight());
                            picture.setValue(Picture._F_WIDTH, image.getIconWidth());
                            picture.isEdited(true);
                            pictures.add(picture);
                        }
                    }
                } else if (field.getValueType() == DcRepository.ValueTypes._DCOBJECTCOLLECTION) {
                    Collection<DcMapping> c = (Collection<DcMapping>) dco.getValue(field.getIndex());
View Full Code Here

        DcWebImages images = (DcWebImages) vr.resolveVariable(fc, "images");
        images.clear();
       
        for (DcField field : dco.getFields()) {
            if (field.getFieldType() == ComponentFactory._PICTUREFIELD) {
                Picture picture = (Picture) dco.getValue(field.getIndex());
               
                if (picture == null) continue;
               
                picture.loadImage(false);
                if (picture.getValue(Picture._D_IMAGE) != null) {
                    DcWebImage wi = new DcWebImage();
                    wi.setFieldIdx(field.getIndex());
                    wi.setModuleIdx(field.getModule());
                    wi.setPicture(picture);
                    images.add(wi);
View Full Code Here

       
        DcWebObject wo = (DcWebObject) vr.resolveVariable(fc, "webObject");
        Map map = fc.getExternalContext().getRequestParameterMap();

        int fieldIdx = Integer.valueOf((String) map.get("fieldIdx"));
        Picture picture = (Picture) wo.getDcObject().getValue(fieldIdx);
        DcWebImage wi = (DcWebImage) vr.resolveVariable(fc, "image");
        wi.setFieldIdx(fieldIdx);
        wi.setModuleIdx(wo.getModule());

        if (picture != null) {
View Full Code Here

   
    @Override
    protected void beforeSave() throws ValidationException {
        super.beforeSave();

        Picture picture = (Picture) getValue(_E_PHOTO);
        if (picture == null || picture.getValue(Picture._D_IMAGE) == null) {
            setValue(User._E_PHOTO, new DcImageIcon(DataCrow.installationDir + "icons/" + "user.png"));
        }
       
        String loginname = (String) getValue(_A_LOGINNAME);
        if (loginname != null)
View Full Code Here

        try {
            image.setIDs();
            image.setValue(Image._A_TITLE, getName(filename, directoryUsage));
            image.setValue(Image._SYS_FILENAME, filename);
           
            Picture pic = (Picture) DcModules.get(DcModules._PICTURE).getItem();
            DcImageIcon icon;
            if (filename.toLowerCase().endsWith(".svg")) {
                SVGtoBufferedImageConverter converter = new SVGtoBufferedImageConverter();
                BufferedImage bi = converter.renderSVG(filename);
                icon = new DcImageIcon(Utilities.getScaledImage(new DcImageIcon(bi), 400, 400));
                filename = File.createTempFile(String.valueOf(Utilities.getUniqueID()), ".png").toString();
                icon.setFilename(filename);
                icon.save();
                bi.flush();
            } else {
                icon = new DcImageIcon(Utilities.getScaledImage(new DcImageIcon(filename), 400, 400));
                pic.setValue(Picture._G_EXTERNAL_FILENAME, filename);
            }
           
            int width = icon.getIconWidth();
            int height = icon.getIconHeight();
           
            image.setValue(Image._F_WIDTH, width != -1 ? Long.valueOf(width) : null);
            image.setValue(Image._G_HEIGHT, height != -1 ? Long.valueOf(height) : null);
           
            icon.getImage().flush();
           
            pic.setValue(Picture._A_OBJECTID, image.getID());
            pic.setValue(Picture._B_FIELD, image.getField(Image._I_IMAGE).getDatabaseFieldName());
            pic.setValue(Picture._D_IMAGE, icon);
            pic.isEdited(true);
           
            image.setValue(Image._I_IMAGE, pic);
           
            File jpegFile = new File(filename);
           
View Full Code Here

                // Make sure only changed fields are updated
                if (!dco.isChanged(field.getIndex()))
                    continue;
               
                if (field.getValueType() == DcRepository.ValueTypes._PICTURE) {
                    Picture picture = (Picture) dco.getValue(field.getIndex());
                    if (picture != null && (picture.isNew() || picture.isEdited() || picture.isDeleted())) {
                        picture.setValue(Picture._A_OBJECTID, dco.getID());
                        picture.setValue(Picture._B_FIELD, field.getDatabaseFieldName());
                        picture.setValue(Picture._C_FILENAME, dco.getID() + "_" + field.getDatabaseFieldName() + ".jpg");
                       
                        ImageIcon icon = (ImageIcon) picture.getValue(Picture._D_IMAGE);
                        if (icon != null) {
                            picture.setValue(Picture._E_HEIGHT, Long.valueOf(icon.getIconHeight()));
                            picture.setValue(Picture._F_WIDTH, Long.valueOf(icon.getIconWidth()));
                            pictures.add(picture);
                        }
                    }
                } else if (field.getValueType() == DcRepository.ValueTypes._DCOBJECTCOLLECTION) {
                    Collection<DcMapping> c = (Collection<DcMapping>) dco.getValue(field.getIndex());
                   
                    if (c != null) references.add(c);
                   
                    if (dco.isChanged(field.getIndex())) {
                        DcModule mappingMod = DcModules.get(DcModules.getMappingModIdx(field.getModule(), field.getReferenceIdx(), field.getIndex()));
                        String sql = "DELETE FROM " + mappingMod.getTableName() + " WHERE "
                                     mappingMod.getField(DcMapping._A_PARENT_ID).getDatabaseFieldName() + " = '" + dco.getID() + "'";
                        stmt.execute(sql);
                    }
                } else if (dco.isChanged(field.getIndex()) && !field.isUiOnly()) {
                    if (sbValues.length() > 0)
                        sbValues.append(", ");
   
                    sbValues.append(field.getDatabaseFieldName());
                    sbValues.append(" = ?");
                    values.add(getQueryValue(dco, field.getIndex()));
                }
            }
   
            String s = sbValues.toString();
            if (dco.getModule().getIndex() != DcModules._PICTURE && !Utilities.isEmpty(values)) {
                ps = conn.prepareStatement("UPDATE " + dco.getTableName() + " SET " + s + "\r\n WHERE ID = '" + dco.getID() + "'");
                setValues(ps, values);
                ps.execute();
                ps.close();
            } else if (!Utilities.isEmpty(values)) {
             
                ps = conn.prepareStatement("UPDATE " + dco.getTableName() + " SET " + s + "\r\n WHERE " +
                        dco.getDatabaseFieldName(Picture._A_OBJECTID) + " = '" + dco.getValue(Picture._A_OBJECTID) + "' AND " +
                        dco.getDatabaseFieldName(Picture._B_FIELD) + " = '" + dco.getValue(Picture._B_FIELD) + "'");
                setValues(ps, values);
                ps.execute();
                ps.close();
            }
   
            int counter = 0;
            for (Collection<DcMapping> c : references) {
               
                counter = 0;
                for (DcMapping mapping : c) {
                    stmt.execute("INSERT INTO " + mapping.getTableName() +
                                 " (" + mapping.getDatabaseFieldName(DcMapping._A_PARENT_ID) + ", " +
                                 mapping.getDatabaseFieldName(DcMapping._B_REFERENCED_ID) +
                                 ") \r\n VALUES ('" + dco.getID() + "', '" + mapping.getReferencedID() + "');");
                    counter++;
                }
            }
           
            for (Picture picture : pictures) {
                if (picture.isNew()) {
                    new InsertQuery(picture).run();
                    saveImage(picture);
                } else if (picture.isEdited()) {
                    new UpdateQuery(picture).run();
                    saveImage(picture);
                } else if (picture.isDeleted()) {
                    stmt.execute("DELETE FROM " + picture.getTableName() + " WHERE " +
                            picture.getField(Picture._A_OBJECTID).getDatabaseFieldName() + " = '" + dco.getID() + "' AND " +
                            picture.getField(Picture._B_FIELD).getDatabaseFieldName() + " = '" +  picture.getValue(Picture._B_FIELD) + "'");
                    deleteImage(picture);   
                }
            }
           
            for (DcObject child : dco.getCurrentChildren()) {
View Full Code Here

                String oldValue = Utilities.getComparableString(dcoOrig.getValue(fieldIdx));
                changed = !oldValue.equals(newValue);
                if (changed) logger.debug("Field " + field.getLabel() + " is changed. Old: " + oldValue + ". New: " + newValue);
            }
        } else if (field.getValueType() == DcRepository.ValueTypes._PICTURE) {
            Picture picture = (Picture) dcoOrig.getValue(fieldIdx);
            changed = (picture != null && (picture.isEdited() || picture.isNew() || picture.isDeleted())) ||
                      ((DcPictureField) component).isChanged();
           
            if (changed) logger.debug("Picture " + field.getLabel() + " is changed.");
        }
       
View Full Code Here

TOP

Related Classes of net.datacrow.core.objects.Picture

Copyright © 2018 www.massapicom. 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.