You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: HButtonBox.m
    path of file: ./repos/opticka/ui/+uix
    
    the code of the file until where you have to start completion: classdef HButtonBox < uix.ButtonBox
    %uix.HButtonBox  Horizontal button box
    %
    %  b = uix.HButtonBox(p1,v1,p2,v2,...) constructs a horizontal button
    %  box and sets parameter p1 to value v1, etc.
    %
    %  A horizontal button box lays out equally sized buttons from left to
    %  right.
    %
    %  See also: uix.VButtonBox
    
    %  Copyright 2009-2020 The MathWorks, Inc.
    
    methods
        
        function obj = HButtonBox( varargin )
            %uix.HButtonBox  Horiz
    
function redraw( obj )
            
            % Compute positions
            bounds = hgconvertunits( ancestor( obj, 'figure' ), ...
                [0 0 1 1], 'normalized', 'pixels', obj );
            buttonSize = obj.ButtonSize_;
            padding = obj.Padding_;
            spacing = obj.Spacing_;
            c = numel( obj.Contents_ );
            if 2 * padding + (c-1) * spacing + c * buttonSize(1) > bounds(3)
                xSizes = uix.calcPixelSizes( bounds(3), -ones( [c 1] ), ...
                    ones( [c 1] ), padding, spacing ); % shrink to fit
            else
                xSizes = repmat( buttonSize(1), [c 1] );
            end