summaryrefslogtreecommitdiffstats
path: root/mac
ModeNameSize
-rw-r--r--MW_TkBuildLibHeader.h151logstatsplain
-rw-r--r--MW_TkBuildLibHeader.pch1182logstatsplain
-rwxr-xr-xMW_TkHeader.h127logstatsplain
-rw-r--r--MW_TkHeader.pch1182logstatsplain
-rw-r--r--MW_TkHeaderCommon.h820logstatsplain
-rwxr-xr-xMW_TkOldImgHeader.h58logstatsplain
-rw-r--r--MW_TkOldImgStaticHeader.h56logstatsplain
-rw-r--r--MW_TkStaticHeader.h145logstatsplain
-rw-r--r--MW_TkStaticHeader.pch1178logstatsplain
-rwxr-xr-xMW_TkTestHeader.h139logstatsplain
-rwxr-xr-xMW_TkTestHeader.pch1290logstatsplain
-rw-r--r--README2734logstatsplain
-rw-r--r--bugs.doc1955logstatsplain
-rwxr-xr-xtclets.r11731logstatsplain
-rw-r--r--tclets.tcl5697logstatsplain
-rw-r--r--tkMac.h1441logstatsplain
-rw-r--r--tkMacAppInit.c10034logstatsplain
-rwxr-xr-xtkMacAppearanceStubs.c2220logstatsplain
-rw-r--r--tkMacApplication.r10583logstatsplain
-rw-r--r--tkMacBitmap.c7529logstatsplain
-rw-r--r--tkMacButton.c52148logstatsplain
-rw-r--r--tkMacClipboard.c7228logstatsplain
-rw-r--r--tkMacColor.c14450logstatsplain
-rw-r--r--tkMacConfig.c1162logstatsplain
-rw-r--r--tkMacCursor.c9750logstatsplain
-rw-r--r--tkMacCursors.r4324logstatsplain
-rw-r--r--tkMacDefault.h17329logstatsplain
-rw-r--r--tkMacDialog.c40815logstatsplain
-rw-r--r--tkMacDraw.c30864logstatsplain
-rw-r--r--tkMacEmbed.c35030logstatsplain
-rw-r--r--tkMacFont.c64837logstatsplain
-rw-r--r--tkMacHLEvents.c11265logstatsplain
-rw-r--r--tkMacInit.c5911logstatsplain
-rw-r--r--tkMacInt.h6956logstatsplain
-rw-r--r--tkMacKeyboard.c15706logstatsplain
-rw-r--r--tkMacLibrary.r2010logstatsplain
-rw-r--r--tkMacMDEF.c3517logstatsplain
-rw-r--r--tkMacMDEF.r2054logstatsplain
-rw-r--r--tkMacMenu.c138600logstatsplain
-rw-r--r--tkMacMenu.r1123logstatsplain
-rw-r--r--tkMacMenubutton.c15175logstatsplain
-rw-r--r--tkMacMenus.c8054logstatsplain
-rw-r--r--tkMacPort.h4000logstatsplain
-rw-r--r--tkMacProjects.sea.hqx241640logstatsplain
-rw-r--r--tkMacRegion.c5235logstatsplain
-rw-r--r--tkMacResource.r17532logstatsplain
-rw-r--r--tkMacScale.c11919logstatsplain
-rw-r--r--tkMacScrlbr.c33195logstatsplain
-rw-r--r--tkMacSend.c17809logstatsplain
-rw-r--r--tkMacSubwindows.c31734logstatsplain
-rw-r--r--tkMacTclCode.r2757logstatsplain
-rw-r--r--tkMacTest.c1845logstatsplain
-rw-r--r--tkMacWindowMgr.c44776logstatsplain
-rw-r--r--tkMacWm.c168159logstatsplain
-rw-r--r--tkMacXCursors.r33455logstatsplain
-rw-r--r--tkMacXStubs.c16796logstatsplain
-rw-r--r--widget.r257logstatsplain
hl opt">::vector<std::string> const& command); private: /// @brief Thread main loop void Loop(); // -- Libuv callbacks static void UVProcessStart(uv_async_t* handle); void UVProcessFinished(); private: // -- Generator cmQtAutoGeneratorMocUic* Gen_; // -- Job handle JobHandleT JobHandle_; // -- Process management std::mutex ProcessMutex_; cm::uv_async_ptr ProcessRequest_; std::condition_variable ProcessCondition_; std::unique_ptr<ReadOnlyProcessT> Process_; // -- System thread std::thread Thread_; }; /// @brief Processing stage enum class StageT { SETTINGS_READ, CREATE_DIRECTORIES, PARSE_SOURCES, PARSE_HEADERS, MOC_PREDEFS, MOC_PROCESS, MOCS_COMPILATION, UIC_PROCESS, SETTINGS_WRITE, FINISH, END }; // -- Const settings interface const BaseSettingsT& Base() const { return this->Base_; } const MocSettingsT& Moc() const { return this->Moc_; } const UicSettingsT& Uic() const { return this->Uic_; } // -- Worker thread interface void WorkerSwapJob(JobHandleT& jobHandle); // -- Parallel job processing interface void ParallelRegisterJobError(); bool ParallelJobPushMoc(JobHandleT& jobHandle); bool ParallelJobPushUic(JobHandleT& jobHandle); bool ParallelMocIncluded(std::string const& sourceFile); std::string ParallelMocAutoRegister(std::string const& baseName); void ParallelMocAutoUpdated(); private: // -- Abstract processing interface bool Init(cmMakefile* makefile) override; bool Process() override; // -- Process stage static void UVPollStage(uv_async_t* handle); void PollStage(); void SetStage(StageT stage); // -- Settings file void SettingsFileRead(); void SettingsFileWrite(); // -- Thread processing bool ThreadsStartJobs(JobQueueT& queue); bool ThreadsJobsDone(); void ThreadsStop(); void RegisterJobError(); // -- Generation void CreateDirectories(); void MocGenerateCompilation(); private: // -- Settings BaseSettingsT Base_; MocSettingsT Moc_; UicSettingsT Uic_; // -- Progress StageT Stage_ = StageT::SETTINGS_READ; // -- Job queues std::mutex JobsMutex_; struct { JobQueueT Sources; JobQueueT Headers; JobQueueT MocPredefs; JobQueueT Moc; JobQueueT Uic; } JobQueues_; JobQueueT JobQueue_; std::size_t volatile JobsRemain_ = 0; bool volatile JobError_ = false; bool volatile JobThreadsAbort_ = false; std::condition_variable JobsConditionRead_; // -- Moc meta std::set<std::string> MocIncludedStrings_; std::set<std::string> MocIncludedFiles_; std::set<std::string> MocAutoFiles_; bool volatile MocAutoFileUpdated_ = false; // -- Settings file std::string SettingsFile_; std::string SettingsStringMoc_; std::string SettingsStringUic_; // -- Threads and loops std::vector<std::unique_ptr<WorkerT>> Workers_; }; #endif