/*
 * Copyright 2012 AndroidPlot.com
 *
 *    Licensed under the Apache License, Version 2.0 (the "License");
 *    you may not use this file except in compliance with the License.
 *    You may obtain a copy of the License at
 *
 *        http://www.apache.org/licenses/LICENSE-2.0
 *
 *    Unless required by applicable law or agreed to in writing, software
 *    distributed under the License is distributed on an "AS IS" BASIS,
 *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *    See the License for the specific language governing permissions and
 *    limitations under the License.
 */

package com.androidplot.demos;

public interface GlobalDefs {
    static final float PLOT_TITLE_FONT_SIZE_DP = 15;
    static final float PLOT_DOMAIN_LABEL_FONT_SIZE_DP = 10;
    static final float PLOT_RANGE_LABEL_FONT_SIZE_DP = 10;
    static final float PLOT_TICK_LABEL_FONT_SIZE_DP = 10;
}
