% funkce pro vykreslení prvního grafu
function [dataStruct] = inputPlot(dataStruct, handles)

entered = 0;
file_1 = 0;

% zjištění počtu vložených souborů
if (~isempty(dataStruct.file_path_1))
    entered = entered + 1;
    file_1 = 1;
end

if (~isempty(dataStruct.file_path_2))
    entered = entered + 1;
end

% podmínka pro zakázání tlačítka Calculate v případě, že nebyl zatím zadán
% žádný soubor
if (entered == 0)
    if (dataStruct.displayed == 1);
        delete(dataStruct.ax_1);
        dataStruct.displayed = 0;
        set(handles.go_button, 'enable', 'off');
    end
    return;
end

% blok pro vykreslení grafu v případě jednoho zadeného souboru
if (entered == 1)
    
    % načtení souborů
    if (file_1 == 1)
        [x_axis, data_1, len] = dataRead(dataStruct.file_path_1);
    else
        [x_axis, data_1, len] = dataRead(dataStruct.file_path_2);
    end
    
    % vymazání předchozí podoby grafu
    if ((dataStruct.displayed == 1) || (dataStruct.displayed == 2))
        delete(dataStruct.ax_1);
        dataStruct.displayed = 0;
        set(handles.go_button, 'enable', 'off');
    end
    
    if (x_axis == 0)
        addToLog('input file error: unsupported file type',handles);
        return;
    end
    
    % vykreslení nového grafu
    dataStruct.ax_1 = axes('parent', handles.panel_in, 'units', 'pixels');
    semilogx(x_axis, data_1,'r','LineWidth',2);
    xlim([x_axis(1) x_axis(len)]);
    xlabel('Frequency axis [Hz]');
    ylabel('datapoint values');
    
    dataStruct.displayed = 1;
    set(handles.go_button, 'enable', 'off');
else
% blok pro vykreslení grafu v případě, že již byly zadány oba vstupní
% soubory
    delete(dataStruct.ax_1);
    
    dataStruct.displayed = 2;
    set(handles.go_button, 'enable', 'on');
    
    % načtení dat
    [x_axis_1, data_1, len_1] = dataRead(dataStruct.file_path_1);
    [x_axis_2, data_2, len_2] = dataRead(dataStruct.file_path_2);
    
    if (x_axis_1 == 0)  % proběhne v případě, kdy první ze zadaných souborů
                        % nelze načíst
        
        addToLog('input file error: unsupported file type',handles);
        
        x_axis = x_axis_2;
        data = data_2;
        len = len_2;
        
        % vykreslení grafu
        dataStruct.ax_1 = axes('parent', handles.panel_in, 'units', 'pixels');
        semilogx(x_axis, data,'r','LineWidth',2);
        xlim([x_axis(1) x_axis(len)]);
        xlabel('Frequency axis [Hz]');
        ylabel('datapoint values');
    
        dataStruct.displayed = 1;
        set(handles.go_button, 'enable', 'off');
        
    elseif (x_axis_2 == 0)  % proběhne v případě, kdy druhý ze zadaných
                            %souborů nelze načíst
        
        addToLog('input file error: unsupported file type',handles);
        
        x_axis = x_axis_1;
        data = data_1;
        len = len_1;
        
        % vykreslení grafu
        dataStruct.ax_1 = axes('parent', handles.panel_in, 'units', 'pixels');
        semilogx(x_axis, data,'r','LineWidth',2);
        xlim([x_axis(1) x_axis(len)]);
        xlabel('Frequency axis [Hz]');
        ylabel('datapoint values');
    
        dataStruct.displayed = 1;
        set(handles.go_button, 'enable', 'off');

    else    % proběhne pokud byly oba soubory načteny úspěšně
        
        % intepolace průběhů
        [x_axis_final, ~, ~, ~] =...
        interpolation(x_axis_1, x_axis_2, data_1, data_2);

        if (x_axis_final == 0)
            addToLog('input files error: files doesn''t have common frequency band',handles);
            set(handles.go_button, 'enable', 'off');
        end
        
        % vykreslení grafu
        dataStruct.ax_1 = axes('parent', handles.panel_in, 'units', 'pixels');
        total_min = min(min(x_axis_1),min(x_axis_2));
        total_max = max(max(x_axis_1),max(x_axis_2));
        semilogx(x_axis_1,data_1,'r','LineWidth',2);
        xlim([total_min total_max]);
        xlabel('Frequency axis [Hz]');
        ylabel('datapoint values');
        hold on
        semilogx(x_axis_2,data_2,'k','LineWidth',2);
    end
    
end

% nastavení velikosti a pozice vykresleného grafu
set(dataStruct.ax_1, 'position', [31 36 dataStruct.panel_size(1)-40 dataStruct.panel_size(2)-55]);

end