/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * * This file incorporates work covered by the following license notice: * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you 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 . */ #ifndef INCLUDED_IDL_INC_OBJECT_HXX #define INCLUDED_IDL_INC_OBJECT_HXX #include "types.hxx" #include "slot.hxx" #include class SvMetaClass; typedef ::std::vector< SvMetaClass* > SvMetaClassList; class SvClassElement { OString aPrefix; tools::SvRef xClass; public: SvClassElement(); SvClassElement(SvMetaClass* pClass) { xClass = pClass; } void SetPrefix( const OString& rPrefix ) { aPrefix = rPrefix; } const OString& GetPrefix() const { return aPrefix; } void SetClass( SvMetaClass * pClass ) { xClass = pClass; } SvMetaClass * GetClass() const { return xClass.get(); } }; class SvMetaClass : public SvMetaType { public: tools::SvRef aSuperClass; std::vector aClassElementList; SvRefMemberList aAttrList; bool TestAttribute( SvIdlDataBase & rBase, SvTokenStream & rInStm, SvMetaAttribute & rAttr ) const; private: static void WriteSlotStubs( const OString& rShellName, SvSlotElementList & rSlotList, ByteStringList & rList, SvStream & rOutStm ); static sal_uInt16 WriteSlotParamArray( SvIdlDataBase & rBase, SvSlotElementList & rSlotList, SvStream & rOutStm ); static sal_uInt16 WriteSlots( const OString& rShellName, SvSlotElementList & rSlotList, SvIdlDataBase & rBase, SvStream & rOutStm ); void InsertSlots( SvSlotElementList& rList, std::vector& rSuperList, SvMetaClassList & rClassList, const OString& rPrefix, SvIdlDataBase& rBase ); public: SvMetaClass(); virtual void ReadContextSvIdl( SvIdlDataBase &, SvTokenStream & rInStm ) override; void FillClasses( SvMetaClassList & rList ); virtual void WriteSfx( SvIdlDataBase & rBase, SvStream & rOutStm ) override; }; #endif // INCLUDED_IDL_INC_OBJECT_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ bora/cp-5.1'>distro/collabora/cp-5.1 LibreOffice 核心代码仓库文档基金会
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-03-09oops, forgot to commit thatMichael Stahl
Change-Id: I7b0a08ca47996f80112f68daef3e2ba5e3be221b
2017-03-09extensions: fix MSVC 2017 build of Library_so_activex_x64Michael Stahl
Change-Id: Ia98c2ba085d6b7705b53dafd5368d69f0e0727c5
2015-07-09remove obsolete check for pre-MSVC2013 ATL library nameMichael Stahl
Change-Id: I52bba4d4c0558e6b87530e4577f4b1ef458b7012 Reviewed-on: https://gerrit.libreoffice.org/16888 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: David Ostrovsky <david@ostrovsky.org>
2014-07-08No atlsd.lib in VS 2013Tor Lillqvist
Instead, atls.lib should be used also with code compiled to use the debugging runtime. See http://msdn.microsoft.com/en-us/library/bb531344.aspx which says "Atls.lib no longer has character-set dependencies or code that's specific for debug/release. Because it works the same for Unicode/ANSI and debug/release, only one version of the library is required." Change-Id: Ie39ea271513dec1084cae8d1bbf93afa286f357a
2014-04-28prefer makefile-gmake-modeTakeshi Abe
Change-Id: I9cc9bfbddd3a90e00eee3e674994e5d6207f9034
2013-04-30Move to MPLv2 license headers, with ESC decision and author's permission.Michael Meeks
2013-04-24extensions: rename WinResTarget target to match source fileMichael Stahl
Change-Id: I8e528f76d08f7a0d7acec05dcf306cd78b95a885
2013-04-15gbuild: add support for building against MSVC debug runtimeMichael Stahl
Mainly this means using /MDd instead of /MD and /MTd instead of /MT in the CFLAGS, and also re-mapping of .lib files to ones with "d". Change-Id: Ifc56b53a66d5eb522c1695a34d68b08cad1d8338
2013-01-26gbuild: fix silly "expandtabs" in makefile VIM modelinesMichael Stahl
Change-Id: I54d8923ad315e8041fd3904da3a29f1a7a8c8b16