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: TabPanel.m
    path of file: ./repos/opticka/ui/+uiextras
    
    the code of the file until where you have to start completion: classdef TabPanel < uix.TabPanel
    %TabPanel  Show one element inside a tabbed panel
    %
    %   obj = uiextras.TabPanel() creates a panel with tabs along one edge
    %   to allow selection between the different child objects contained.
    %
    %   obj = uiextras.TabPanel(param,value,...) also sets one or more
    %   property values.
    %
    %   See the <a href="matlab:doc uiextras.TabPanel">documentation</a> for more detail and the list of properties.
    %
    %   Examples:
    %   >> f = figure();
    %   >> p = uiextras.TabPanel( 'Parent', f, 'Padding', 5 );
    %   >> uicontrol( 'Style', 'frame', 'Parent', p, 'Background', 'r' );
    %   >> uicontrol( 'Style', 'frame', 'Parent', p, 'Background', 'b' );
    %   >> uicontrol( 'Style', 'frame', 'Parent', p, 'Backgroun
    
function set.TabNames( obj, value )
            
            % Set
            obj.TabTitles = value;
            
        end % set.TabNames
        
        function value = get.TabPosition( obj )
            
            % Get
            value = obj.TabLocation;
            
        end % get.TabPosition
        
        function set.TabPosition( obj, value )
            
            % Set
            obj.TabLocation = value;
            
        end % set.TabPosition
        
        function value = get.TabSize( obj )
            
            % Get
            value = obj.TabWidth;
            
        end % get.TabSize
        
        function set.TabSize( obj, value )
            
            % Set
            obj.TabWidth = value;
            
        end % set.TabSize
        
    end % accessors
    
    methods( Access = private )
        
        function onSelectionChanged( obj, source, eventData )
            
            % Create legacy event data structure
            oldEventData = struct( 'Source', eventData.Source, ...
                'PreviousChild', eventData.OldValue, ...
                'SelectedChild', eventData.NewValue );
            
            % Call callback
            callback = obj.Callback_;
            if ischar( callback ) && isequal( callback, '' )
                % do nothing
            elseif ischar( callback )
                feval( callback, source, oldEventData )
            elseif isa( callback, 'function_handle' )
                callback( source, oldEventData )
            elseif iscell( callback )
                feval( callback{1}, source, oldEventData, callback{2:end